I'll jut jump right in here because I have issues with some of the "reasons" given for tipping in general.
I will never, ever pre-pay - that's why we don't use anytime dining. I never will. That said, we have only once cut back on a tip - we always give at least the recommended amount and at that point, it is our choice. Once our steward ended up with nothing - and I'll tell you why. When our bags arrived he brought them into our room (which they are actually not suppose to do). Then knocked on the door to balcony because we were out there - stuck his hand out and wanted a tip for bringing in our bags. He got 2 bucks - and that was it for the rest of the week.
Generally we do not tip the head waiter. They are well paid and really don't do anything for us. The only time we had an exceptional head waiter was on our last cruise on HAL and he did earn his tip.
At home or when in the U.S. we do not tip more than 10% with the odd time 15%. I feel that's sufficient.
I do not tip my hairdresser because she is the owner.
Friday when I went for a pedicure and a fill, for the first time I nevered tipped - not only that but I won't ever return there. She cut my toe and just glared!!!! If I could have walked out then I would have.
I will never tip for bad service - I don't care who or where.
I work very hard for my money and I expect good service. If the food is lousy and I send it back I don't blame the wait staff (ship or land) however their attitude will play into it. There is a steak house here we go to once in awhile. Service is outstanding although the steaks are off once in awhile. When we send it back we not only get a new one, we get exlempary service and usually a free dessert. Now that is service.