Well, I get your general point though tipping at a restaurant doesn't quite work like that. You don't get crappy service as a result of not tipping; you tip at the end of the service.
I tip 20% no matter how dismal the service, which is not the norm here. People have bad days and I don't want to financially penalize them on top of it. It just feels shitty.