How is that Apple's fault? You'd have exactly the same false dilemma on any system where you wanted to run old and new software that weren't compatible with the same OS version. What if you were on Windows and wanted to run a new app that needed .NET and an old one that only worked on Win9x?
It's a false dilemma anyway, because you've ignored obvious solutions like virtual machines or dual booting. Again, exactly the same options you'd have on Windows, Linux, or whatever.