We are in the river of Micro$oft and can not swim backward!
Has nothing to do with Microsoft. Anytime you use features of something that previous versions don't have, you're going to run into this problem.
For example, if I remember correctly, earlier versions of MySQL didn't support stored procedures. So if you write an app that uses the current version MySQL and use stored procedures, it will bomb for anyone using using a version before stored procedure support was added.