Never be rude to a CSR/customer service person. If they personally are decent, then it's the business's fault they can't help you. If they're rude, report them to management or corporate.
We've got 10% unemployment. If someone is in a customer service job and can't treat customers decently, get his ass fired and get someone else in there who wants/needs a job.
Plus even if they're rude, why lower yourself to their level? And purely defensively, the cliche "don't piss off the person who's bringing you food" has validity to it.
Polite, factual, firm, and saying something positive along with my complaint usually works for me. People won't go above and beyond, they may even do less than the minimum, for people/customers who treat them poorly.
If you're rude, even if you're in the right, your opinion may be minimized by their seeing 'Oh he's just a jerk, who cares what he thinks."
Unfortunately, some businesses do treat the squeaky wheel better. I couldn't be that customer because, well, I'm not a jerk. Odds are though that that customer is being blackballed.