Making people "responsible for the costs of their actions" is not always the best way to fix a problem. Sometimes society has to protect itself by outlawing otherwise profitable behaviors such as fraud or armed robbery.
Perhaps it would be better to simply ban or regulate things like high fructose corn syrup, phosphoric acid and other garbage that soda makers find cheaper than real food. It can be argued that these ingredients are responsible for the obesity epidemic. Fat people get cancer more frequently than "normal" people and we now see even children with acquired diabetes. Real foods like sugar are not that much more expensive but without laws to protect food makers, economics forces them to all use crap. If you think food bans violate your liberty, remember that lead oxides were once as a cheap sweetener before people really understood heavy metal poisoning.
Finally, "sin taxes" make the state a partner in crime. Tobacco taxes, for example, have not come close to eliminating smoking or paying for the medical costs. I doubt it is possible to strip the hundreds of thousands of dollars cancer treatment alone costs from the average slob who smoke even if you assume the smoker survives forty years of their addiction. Prevention programs, the tobacco companies know, often backfire by normalizing smoking in a way that direct advertising has a hard time conveying. It would be a lot easier and cheaper to just ban the sale of tobacco. Taxing sodas is much the same. In the 20 year war between Iran and Iraq a causeway was literally built out of the bodies of dead soldiers. Do we want to pave our streets with the blood of smokers and soda drinkers, or do we want to outlaw profit from the sale of addictive, factory made poisons?