IMHO if the service sucks, have them remove the tip. They don't usually call it a service charge, which I think might get sticky. They almost always call it a 'gratuity'. Whatever they wish to call it, however, I would put up a fuss if the service was bad enough.
On the second part of your question, you are right in that it is not correct to calculate tax on the tip.