Since you're planning on coming this far north, I'd add a couple of stops in Vermont and Quebec, especially if you want to experience something different than the typical American cities. Quebec City is especially interesting and different from any other city in North America. There's a distinct European feel to it, not to mention a picturesque location and amazingly preserved architecture. Montreal is more similar to other American cities, but it has a certain trendy, lively flair and is a fun city to discover. It's the city that never goes to sleep and it's a city of diversity...if you take the time to discover its many faces and you don't stick to the touristy part of the Western downtown area.

I never cared much for Toronto until I started to discover the more "underground" parts of it and the waterfront neighbourhoods. I like the sceneries offered by the old grain elevators and industrial ruins over the skyline. There a lots of good Indian restaurants in TO, as well as Vietnamese and Thai (stay away from the downtown area where you pay twice the price for half the quality). There is a certain number of excellent festivals held in TO as well, you can grab a cultural calendar to learn more.

Have fun!
Gen