Earlier quoted context omitted.
In my experience, you get what you pay for there. The problem is, most companies who offshore are being cheapskates, and go bottom barrel. Then we Americans who work with them are thinking 'wow, people from country X are terrible programmers.' But not universally true. Amazing talent exists in India for example, but they command much higher prices.
Why don't they compare to work from cheapest almost finished boot camp graduates doing freelancing work in USA... And then extend that performance to describe your average USA based developer...
To answer your question, it's because most people aren't. You typically work with one or two brilliant people, a buncha midrangers, then ... those.
However, when you get folks from other countries, it's typically only because your company is trying to cut costs and hires some really cheap body shop. So we don't meet the brilliant people from other countries, and are lucky to encounter the midrangers. And they don't stick around long.
I was once so excited that a person we got from said body shop offshore was truly brilliant. Like, a person hired as Java but happened to know C and ASM and the inner workings of the linux kernel. He asked if he could help me with a couple (harder) things I was working on, and was amazing. As you may imagine, he stayed for about a month before moving to better things. I begged my company to poach him, but our contract forbid it.