The problem with support contracts, or support requests solved by an upgrade, is that the User needs it now, not after a procurement process.
Doing procurement annually is easier because it can be planned for, budgeted for etc, and happens on a separate thread to the actual support.
Even when they overlap there's enough grace to keep the User happy while waiting on the customer.