You're spending generous amounts of time in places and that's great to see. I see no glaring errors of issues in your order and you have clearly thought it through.
My suggestions are based solely on my personal preferences, but here goes.
- If you're going to spend that much time in La Spezia/CT area I would advocate taking the time to check out the southern side of the La Spezia bay. There are three interesting towns including San Terezno, resorty Lerici with a marina and Tellaro which is very much like a little CT town. It is beach summer touristy but it's Italian touristy with people in for the summer.
- I would also advise considering staying north of CT on the Ligurian coast in one of the towns like Chiavari or Sestri Levante. It gives you train access south to CT and north to Rapallo and Santa Margherita Ligure/Portofino if that interests you.
- With five days in Florence I would advocate a day trip to Siena.
- Venice deserves at least one more day.
Milan to La Spezia is a long day on the train - longer if it is Como to La Spezia. I'll be honest and say that Milan holds little interest for me as a large busy modern city. If it were my trip I would add a day to Venice, swap Lake Como for Lake Garda taking the bus to someplace like Malcesine and cut out MIlan. And if you were to do this I would go Roma > Venice > Lake Garda > Florence > La Spezia > Genoa. This would also give you big city, Venice, lake, big city, CT, and break up the back to back cities with smaller locations. You would then need to figure out what to do an additional day in the schedule assuming one goes to Venice. If you stay in Chiavari I would add it there because there are a lot of destinations from both directions from there.
My $.02, I'm not criticizing your solid schedule I'm just adding my opinions.
It sounds like an amazing trip!
=Tod