But let me say this with your words, is it right to punish the customer for something management did?
Well, I don't see it as punishment. I'm not messing with anyone's food, and I'm always polite and professional. But if I have two deliveries, and I know one of them won't tip (perversely, the people who don't tip are generally the ones who order most frequently) I deliver the other order first, regardless of how old the two orders are. That's a simple cost/benefit analysis, IMHO.
I can't really speak to what tips were like before the companies starting imposing "delivery fees", because I've only been doing this since 2007. But everyone I know in the industry (I've worked in six different stores, for three different companies) is honest with customers about how much of the delivery charge "goes to" the driver. (Drivers were getting a per-delivery supplement before the delivery charges, so it's kind of misleading even to say they "get" some of that money - it's 100% profit for the store.) I think it's exceedingly rare for a tipping customer to have become a non-tipping customer because of the system, though. Some people tip, and some don't - I really believe it's as simple as that.