It occurs to me that tipping is really just a way for restaurant owners to ship part of their labor cost to their customers.
Pay your employees more and get rid of this dated, patronizing practice!
Tippins is the way for the restaurant encourages employees to give good service. The restaurant want the customer to get good service and be inclined to return, but the manager cannot possibly monitor the staff 100% of the time, so they "outsource" the job to the customers, who gives feedback based on the service they receive.
Those who give bad service will either have to quit due to not making enough money, or improve.
And let's face it, if the restaurant had to pay waiters more, the price on the menu would increase to reflect it.
So they aren't passing off the cost, they are simply passing off the judgement of how much each server deserves.