That's because they're not designed to work, they're designed to confirm to what people think will work.
Losing weight is not a mystery: Take less calories in than you burn and you will lose weight (simple, but 99% effective). To do this you need to eat healthy foods and get active.
People don't want to do this. People want to eat crappy foods and sit around watching Grey's Anatomy (#93) and lose weight.
Whomever figures out how to make people want to loose weight, rather than convince them they should force themselves to loose weight are going to make a fortune.
mstevens: I would hazard that most people are fat because of their economic condition. That is, they can only afford cheap foods, which are mostly fatty.
All the offices I've worked in here in America, probably more than half (myself included) of the overpaid nerds were overweight.
Sure if you go to the marketing department, that's probably not the case, but that's just because marketing won't hire you if you aren't pretty. We're not so picky over here in Engineering.
Eating healthy does take time and effort and some knowledge, but it doesn't take that much money. Assuming you have access to a stove, healthy food can be had for cheap. Chicken? cheap. rice and beans? cheap. Vegetables? yeah, those are pretty cheap too.
Historically and for most of the world's population, your economic condition would prevent you from being fat. Poor in the US are so well-off, they can afford to be overweight.