As a software engineer, I'll answer that question... the more versions of software you support the more work it is. The user interface (how the program looks and feels) is at least to some extent integrated with the underlying functionality. Supporting the matrix of "Every UI ever produced" x "Every functionality level ever produced" is a whole lot more work than just reving the UI and functionality in lockstep. The more combinations you have to support, the worse the support ends up being, and the more unreliable the product ends up becoming.