If you think that walking solo from house to house with a heavy bag (at a government wage) or standing in the same place for six hours while scanning a barcode is equal in stress to being screamed at by 10 different tables (60+ people) for 10 different things and kitchen staff, all while trying to keep up the joviality of a court jester, you have never really thought about it, never worked as a server, and really need to think through what the differences might be. Not the same. I have been both a cashier and a server. Not the same at all.
I worked in the service industry for way too long. I had to leave because I thought I might assault a customer due to lack of appreciation and adequate pay. Needless to say, I would rather do anything than work in the industry again
Delivering food...I can only say that where I worked, the drivers were high school students who got stoned the whole time. They didn't tip out anything and they weren't supporting themselves, they were more trying to get a foot in the door for having work experience.
Here's an interesting article about tipping in food service:
http://www.huffingtonpost.com/matt-walsh/open-letter-to-bad-tippers_b_4549644.html
The fact is, it IS a norm in North America. If it were a norm at your job, and you depended on it for survival ($8.50/H I believe is a server's wage), you would be vehement about it as well. Not everyone is in the industry because it's their only choice, some people are career servers. Who is anyone to tell them to get another job?
I know people get really uppity about this, but let's just clarify that we aren't talking about slack ass servers who consistently give bad service and don't seem to care. There are customers out there who truly will use any reason at all to not tip or tip poorly. If you can afford your $100 bill, but you can't tip an adequate amount when you receive good service, call it was it is:
you're cheap.