Tipping in America is a calculated portion of Waiter and Staff compensation, written into our labor laws. That is why waiters are not required to earn minimum wage (in most states).
I have always laughed at the 'it's too hard to calculate' argument. Really? Middle School math still throws stumbling blocks into your daily life.
I think that we would find that if we abolished tipping and required a minimum wage to be paid, that the demographics of waiters would change. Also the ability to find employment would change, for the worse.
Finally, tipping (in my mind) should never be used as some sort of illustration of how much you did not like something. If you did not like it, tell the manager. but leaving a few pennies or turning into 'Mr. Pink' does not do anything except make you look petty.