If you're into exploring streets and great food, you need to spend more time in Miami. The Latin American food down there is phenomenal, and the streets of Miami Beach are just packed full of great little spots to explore (and fab art-deco architecture - don't miss the
Art Deco Walking Tours!) On the same note, you won't like Orlando very much - the food is all theme-park stuff or generic American chains, and there's no streets to explore because it sprawls like hell and you need a car to get around.
And if you're travelling in December, NYC and Canada are going to be cold as hell - you're definitely going to want to spend more time down south. (You might even want to try something a bit different - I hear Savannah's lovely, and it's almost bang on halfway between Miami and Washington.)
Flying out of NYC on Dec 31st shouldn't be a problem, either - you might even get slightly cheaper flights because everybody wants to go the other way.
Here's what I'd recommend:
* 4 days Orlando
* 5 days Miami Beach
* 3 days extra: catch the bus down the Florida Keys and spend a couple of nights in Key West. The drive is mindbogglingly pretty, so make sure you sit up the front - and when you're in Key West, don't miss the tour out to
Dry Tortugas National Park.
* 5 days Washington (there's flights from Key West Airport to everywhere)
* 5 days NYC
Toronto and Montreal and all that are lovely, but they'll be cold as hell.