I have not encountered much bad service the last few years, or even a server with an attitude. One time I decided that instead of approaching the Manager at the end, I pulled the server aside and very nicely asked why the service was lacking and I did get attitude. I the proceeded to nicely tell him that I would be speaking to the Manager and that he would be lucky to see a tip. The next time I went back there, he was gone. Guess I wasn't the only one.
Another time, it took about 15 minutes for the server to even come to our table after we were seated. I then pulled the server aside and said that we were already extremely unhappy that it took so long and if the service was going to be like that througout the meal, we would like to know, so we could go elsewhere immediately. Apparently that worked because we had excellent service, I did however write a letter to the Manager telling her exactly what had happened and was comped 2 meals the next time we went there.