Agreed, gratuity isn't mandated in most situations... if only it were!!!
I personally believe there is a strong case for entitlement in the service industry. Servers are paid minimum wage. The restaurant is able to maintain a staff of professional, hard-working, intelligent servers paid for minimum wage. This translates to lower menu prices etc for the consumer. "Gratuity" is what keeps university-educated people like myself in the waiting game. In non-tipping countries, servers are well-paid individuals and menu prices must reflect that fact. So while tipping is technically voluntary, skimping on your server's tip is a violation of sorts -- especially when the majority of poor tips are beyond the control of the waiter.
I tip 20%, minimum, 100% of the time -- of course more if I was delighted with the server's performance. If I feel a server was distant or under-performing, I'll scribble a quick note saying "I wait tables for a living and I'm going to tip you appropriately, but a lot of people would have reduced this tip this tip because..."
I think the general public has no idea what waiting is all about. If everyone in America waited tables at some point in their lives for one month, ignorance about dining out etiquette would disappear completely.