From where I am sitting, it looks like more than just cost, it's about control. If a smart mouth prima donna like myself lost his job, it would suck, yes, but if I were an H1-B I could be
deported. If I were in that position I would think twice about telling my boss something he didn't want to hear.
But it's worse than that. An Indian coworker once shared an unsubstantiated story about how an unscrupulous recruiter brought over a bunch of IT workers from India and forced them to work for essentially nothing. One call to immigration from their employer and they are sent back. It's hard for me to imagine the vulnerability of being in a place distant from my home with minimal language skills and no knowledge of my rights. Neither your boss nor US immigration is your friend.
Another thing I see from Indian workers is a strange ability to be experts in extremely specific and obscure technologies. If in an interview if I am asked about my proficiency in unfamiliar piece of software, I might respond "It looks similar to other tools I have used. I am sure I could pick it up quickly."
This is NOT what pointy-haired HR suit-monkeys want to hear.
I don't know if Indians are more comfortable lying about this, or if they take a crash course to prepare for the interview, or if they are graduates of some school in India called "The Institute of Suspiciously Obscure Technologies" but this may be a large part of the justification behind the "talent" excuse for more H1-Bs.
There is plenty of talent domestically - they real business need is simply being buzzword-compliant and an unwillingness to train.
If that came across a little racist, Let me say that with rare exception the Indian people I have known are competent and pleasant coworkers. I have no personal issues there.