You're right: I think the biggest difference in product quality comes from the differences in reputational effects.
A local developer or consultant will often rely almost exclusively on referrals and their reputation to get new (high-priced) gigs. So they have a strong incentive to keep quality high and to have satisfied customers.
On the other hand, outsourcing providers tend to be fly-by-night operations whose sole competitive advantage is low cost. They have essentially no reputational incentive, as there will always be another fool looking for Facebook at bargain bin prices.
A local developer or consultant will often rely almost exclusively on referrals and their reputation to get new (high-priced) gigs. So they have a strong incentive to keep quality high and to have satisfied customers.
On the other hand, outsourcing providers tend to be fly-by-night operations whose sole competitive advantage is low cost. They have essentially no reputational incentive, as there will always be another fool looking for Facebook at bargain bin prices.