IT's not the drivers...and I'll explain why SKYMTL follows along with me...
Take G80. 128 threads/pipelines? R600/R670 is 320...
So, G80 does more complex math, and benefits from longer calculations. R600 excels at many calculations at one, but those tasks are limited.
Wnable SLi/Crossfire, and if your engine isn't aware of more processing ability, the gains from an extra GPU aren't going to be very large...purely based on info from one frame is almost always needed for the next, and the associated delays involved in syncing that data...
But COD4...well, it creates more threads in dual gpu mode, as does pretty much any game that offers such functionality. COD4 is designed to run well on mid-range/last-gen hardware, and as such, the actual rendering tasks are small, but numerous calculations. Enabling dual-gpu inceases the numbers, and it just so happens that they fit well within the processing limits offered by a single R500/R600/R700 gen gpu...each offers more shader processing elements than the competition, adn this allows for gains using dual-gpu mode for single cards.
SKTMTL, there's other engiens that offer this, and I'm sure you'll see the same sort of gains there as well.