Sorry bout joining the party late but wanted to weigh in.  As someone who has worked in hospitality for the last 15 years I have pretty strong opinion on the subject.  
1st a "Fun Fact" -
Most restaurants not only have servers but bus boys, bartenders, and sometimes even food runners (servers who are just bringing out the food.)  These people are often "tipped out" by servers after their shift since virtually no one is going to tip a bus boy.  Now while bus boys and food runners (usually) make a bit more then the server sub-minimum wage, the rest comes from the server.  Most restaurants base the Minimum amount a server can "tip out" (pool tips with) on the servers Sales for the day (Not Tips but Sales)- say 1% to Busser, 1% to Food Runner and 2% to Bartender.  (Again these are minimums - you want your drinks made with a priority and not take 15 minutes?  Tables pre bussed and cleared like magic?  That extra touch from a food runner?  Those %s are probably gonna increase.) This means that the server needs to give excellent service and receive 20% tips to make the average 15% tip.  But (regardless of reason)what happens when people under tip/don't tip? I have had a few shifts over the years where I got to enjoy the privilege of paying out of my own pocket to serve my guests.  Let me be clear - not only did I leave my 10 hour shift without having any money, I actually had to run to an ATM so I could get cash to pay my co workers.)  Before you troll at me - no I'm not a terrible server you sometimes just have days were you only get a few tables of guests and those tables are filled with... let's call them...People in need of hugs. 
Another thing that seems to escape people is those who tip solely on quality of service - yes it is a TIP.  However the meta (had to say that on a RP site lol) of this country is that servers are paid at a sub par rate because the TIPs will compensate - best practice? No.  Reality? Yes.  That said - Take a moment and answer honestly, ever had a bad day at work?  Just a day where you're just not a drop of golden sunshine?  Now imagine your boss coming to your desk and saying "So...yea...We're just not feeling you're giving that 100% today.  So we're gonna go ahead and dock your pay, ok?  Thanks."  Or imagine you ARE giving 100% but the convo goes like this "Your face annoys me.  No pay today." or "I firmly believe our company should compensate you in a different and better manner - to support this I'm gonna dock your wages until they fix this, ok - good talk."
Ok so yes you should tip worse if you receive poor service but unless that service is just vile it should be at least 10%.  You want to "stick it" to the server? Speak to a manager - ask for the company corporate number - take the servers name and make the call - I promise that server will have reprecussions/training because of it.  But don't take food out of their (or maybe their children's) mouths because they dared to wait 2 minutes before refilling that coffee cup (THE HORROR!!!)
Since I'm on my soap box - I'll just put this out there as well - Perception is reality - that means if you feel like you've been waiting an hour for that non butterflied well done steak (you monster)- nothing, not a watch, not a timelord and certainly not your server is going to convince you it has only been 15 minutes. I've seen people who get crazy go nuts mad at the server when they request say "No onions in my pasta" then after the food runner drops off plate they call the server over and rip their head off.  Yes the food could have been rung in incorrectly - however, it is also possible the cook, the expo (guy who preps table's food to go out at same time), or the food runner dropped the ball.  While this issue is usually mitagatesd at higher end restaurants by ensuring that all of your meal is seen by the server before it goes out - at most joints this is a "not so much".  My point is that the next time you are mad due to some issue with your server - ask yourself is this something that my server can even effect?  If yes it is something they can effect - look around - is the restaurant pretty busy?  Maybe they are running around dealing with other (not yours, totally not yours) high maintenance tables?  Yea it's not your problem - but everyone gets busy - how are you at work when it's crunch time? (see previous paragraph if the answer isn't 100% every time all the time.  Also if you feel you don't need to see the previous paragraph you should stop reading and call 911 as you pants are on fire.)
Disney has a really unique system for hiring upper level management.  No matter what your job title (say VP of Marketing for example)for 3 to 6 months you have to work at a service level (server, cashier, janitor) at Disney World/Land. This way you truly appreciate the job that the guy who brings your food, cleans up your messes does.  I wish people had to spend 3-6 months in any service industry.  I believe all the "I don't tip because I want to make the world better" or "Tipping is dumb - they want more money?  Go get a REAL job." an of course the " I waited an hour to get a table when they told me it was only a 20 minute wait , you sir will pay for this..." folks might take a different world view - 
;TLDR - Don't be "that guy".  If you're going to go to a restaurant in a country that tipping is the norm, Tip.  Gross under tipping (nickel/penny/Lord help you religious card) for sub par service makes you a mean person.  Your not clever, or righteous you are a bully who is possibly taking food out of someone's child's mouth.
Good Talk all - sorry about rant : )