I don't think Apple is entirely without blame here. They appear to have no problems convincing either of these companies to make cards for all their computers as and when they need them. I guess Apple just doesn't see user-upgradable graphics as a strong priority for the Mac platform.
I don't know exactly how it works but I suppose Apple is actually paying Nvidia and ATI to write the drivers for the cards every time they request some new cards from them. Apple cannot write the drivers on their own so it costs them to include new GPU's. And probably that's why they can't include every new GPU since that wouldn't be profitable for Apple. How many people would upgrade their GPU in their Octo Pro just to play games better? I would but I don't see many professionals doing it, they just want to get the work done and most are not interested in games. If it wasn't for the driver issue, I'm pretty sure ATI and Nvidia or Apple wouldn't have any problem supporting every new GPU on the Mac.