A. wait till your eligible to upgrade
B. eat the $250 early upgrade fee
If you cancel they still won't consider you a new customer for 60-90 days so you still wouldn't get subsidized pricing.
I'm going with option A as we are eligible to upgrade at the end of next month.