I do think everyone...everyone should work retail or as a server at least once in their lives to learn how to respect others.
As far as the customer always being right? No way. The amount on stories I could tell..I am sure I have forgotten more than I can remember. Being able to fire a customer should be a right of any seasoned salesperson, manager or business owner.
I had a 3 week stint as a server. Brutal... I really couldn't deal with was the internal workings of the management team. To this day, it's the only job I've ever walked out of... this is like 1986, so it's been a long while past, but a hard esson learned. When you see poor management in the first five minutes of the job, you know, the kind that clearly is there to light the flaming hoops and smack you up side the head three stooges style with a 2x4 ("Hey Curly!"), then walk away quickly.