I follow your math, but not everyone has the same opportunity costs as you. I have a Citibank card that only gives me 1% cashback (credited the next month) but I can only use it online - it does not have a magnetic strip.
When I got to Home Depot to make a big purchase I have to choose between double miles from my Skymiles AmEx or using my Home Depot card which features no payments/no interest for 6 months on purchases over $299. I can then park the amount of the purchase in an interest bearing account and pocket the interest a few months later or I have the luxury of waiting to come up with the cash.
I guess my point is that each bird sings it's own tune. It's up to the individual to determine whether or not an affinity card is right for them.