I have been down both roads, and the choice is rarely about quality, but about control. When we split our last project across separate vendors for art, code, and QA, we spent half our budget just on integration and managing the communication gaps between them. The code team blamed the art team...