Jesus, there's a lot of hate for workers in this thread... 😬
Edit: I understand why employers do this, but the fact is they DO do it, and denying tips isn't going to make employers pay their workers more money. They only understand money, not sympathy, and all you're doing is taking away the employees' money, not theirs. If it's not hurting them, they're not going to raise wages because they simply don't care.
So while one stands there refusing to tip out of a (not entirely incorrect) philosophical viewpoint, those workers reliant on tips will be starving because without said tips they can't afford rent let alone food.
In other words, I agree with the general logic behind the conclusion but not the specific logic.
TL;DR:
Making the employers pay the employees more money? Great!
Attempting to do it by hurting the employees but not the employer? Not so great!
Don't make excuses for employers and shift the blame to customers. Missing out on W2 wages means that you are not going to have any social security in retirement unless you actually declare all your tips.