I've heard a lot of comments from friends and colleagues about how poor the service attitude is in China. It seems that waiters in China are just not service oriented. Personally, I have found some truth in this. Waiters in China are pushy. They force you to order tea (which costs extra), and more expensive dishes (like seafood and steak). If you don't follow their recommendations, they make their disappointment known via body language/attitude. Orders are never perfect. If you order five dishes, there's a good chance that one of them won't show up. When you complain about the absent dish, you will once again be met with disdain.
However, its not always like that. One very peculiar thing I noticed is that when foreigners are present, some waiters will suddenly "light up". Good manners all around. The waiters are suddenly attentive, laughing at their loose grasp of the English language, replacing chopsticks with forks and knives, ready and waiting with soda and beer. Why this sudden change in attitude?
Most foreigners are polite. Still don't understand?
Most of the Hong Kong and Mainland Chinese who dine in these same restaurants are very rude to the staff. They never give any thanks to their servers. A nice "thank you" is never met with a "you're welcome". They also never say "please" or "excuse me". Servers have gotten tired of customers not giving any gratitude. They get nothing in return for being polite, whether that be a simple thanks, or a monetary tip (tipping is not customary in China).
Foreigners on the other hand not only tip (out of habit), but they're also very polite (again out of habit). Servers treat foreigners better because foreigners treat them better.
It is that simple. If Hong Kong people are more polite to their Mainland counterparts, they will find that China may not be as impolite as they think.