We've decided to do the same thing on our upcoming trip. We are taking the train to Manarola in the morning, then the ferry to Vernazza and finally hiking to Monterosso. Once we wrap up there in the afternoon, we plan to take the train to Pisa to see the tower, and then back on the train to Florence where we've booked a hotel a short walk from the station. That way we can get an earlier start seeing the sights in Florence before taking the train back to Livorno after lunch with plenty of time to get back to the ship before the all aboard time. Based on our calculations, it actually saves us money vs. doing the ship's excursions to Cinque Terre and Florence/Pisa (even when accounting for travel costs, hotel, and meals) and allows us to travel at our own pace and have more time at each location.