This is an interesting article that highlights recent research on the role that individual as well as structural factors may play in causing health inequalities.
Mackenbach suggests that this may be due to genetics (seems unlikely to me), childhood environments, or a kind of selection that influences social mobility. The latter two factors seem inextricably linked to me, even if one were to believe that upwards social mobility occurs solely due to personal ability and merit. One's childhood environment plays a big role in determining a huge range of personal attributes.
I guess it only took public health forty years to discover agency as well as structure.