I'm not in charge of out-sourcing, I'm in the shittier spot. Testing the code that the out sourced developers create. Here's my stance on outsourcing
1) They often will not be able to take high level goals/ideas like we do in America, you have to break it way down for them
2) You have to create a design spec for them and they will follow it to the point of no-return, so I hope you don't send them the draft by accident
3) Expect many hours wasted due to time zones/language barriers, also be prepared for some late night/early-morning conference calls, I found it best to just use an IM system & screen shares as they will avoid the accent issues. You can try MSN's auto-translate feature for IMs.
4) Set a VERY strict limit for them on number of bugs/features you expect them to finish each day/week, otherwise they will loiter around for awhile
5) Make sure communication with the devs who do the coding goes through their bosses, cause their boss is the one who will walk over and yell at them to stop procrastinating
My opinion of a cutoff point is that if it takes your developer as long to explain something to them, he/she should do it himself. Yes I know you want to bring up your "off-shore" team to the same standard as your in-house developers, but lets face it, they aren't in the office so they won't be as good.
Don't be afraid to cut them, you might've dropped a ton of money/time into things, but be willing to cut your losses.