Well...
There are two sides to this..
1) Some companies go to the cheapest solution and that means that the work is off-shored to a cheap provider. That means that the person on the other end of the line doesn't have a great command of the english language.
2) Some companies (like mine) off shore work to companies that have proven that they can provide well spoken people who are able to provide good support. In fact, I've heard some of them flip from their Indian accent to the American version and it's creepy because, if I close my eyes, they sound like they're from somewhere in the mid-west.
We need to speak with our dollars, but need to understand that many Americans feel that they are just too important to do something as menial as customer service, unless they are paid enough to be able to buy all the crap they feel like they deserve. On the other hand, there are some great people out there that do want to do this work, are good at it and are able to be successful in their countries, even at wages that are less than we're paying here.
So, this is a two-fold argument. We can bitch all we want about the people that we can't understand. Or, we can try to see the person at the other end of the line as someone who's likely trying hard to do a good job and speaking a language that's not their primary language, trying to work with us.
How many of us can speak another language, much less have ever tried to learn one? How much of a 'tard would we sound to a person from japan if we were trying to speak to them in Japanese?
So, while I agree with the theme of telling companies to stop seeking the bottom line and pay attention to the customers, I'm not sure I agree to us taking it out on people who are only doing what we're asking them to do.