It's a combination of all sorts of things - genes, diet, whether you smoke, drink sunbathe etc.
I am prepared to believe that the creams right at the top end of the market (the Creme de mer type price) make a difference, but I think there's not a lot of difference between the £10 and £30 ranges.