A couple years ago we went into / out of Frankfurt with our then late teenagers. We spent the last two nights in Frankfurt, 3 in Strasbourg with a day trip to Colmar, and 4 in Zurich with day trip to Geneva to visit CERN for our Physics major son and another to Mount Titlis and Lucerne. Strasbourg was the big hit with the family.
If I was me, I'd consider 1 or 2 nights in Frankfurt. Stay in the city center and spend the first day/afternoon wandering around. One fun spot for kids is the Naturmuseum Senckenberg. Our boys enjoyed it but I would probably spend more time elsewhere if I was booking a similar trip.
We landed and took the train to Strasbourg. We stayed at the Hotel Cathédrale (www.hotel-cathedrale.fr) which literally is in the main square. There is a lot of foot traffic but you're in the middle of everything. We loved it. (My wife and I have been back for the Christmas markets.) If I was to book the trip today, I wouldn't change a thing including the day trip to Colmar.
In your situation, I'd suggest after Strasbourg, a midway stop in either Zurich or Lucerne for a couple days before going to Geneva. Whichever one (Zurich or Lucerne) works out best for you, you can easily visit the other as a day trip. We stayed at the Hotel Adler in Zurich (www.hotel-adler.ch) which has a family room. Nothing fancy but an easy 10-12 minute walk to the train/bus station in one direction and 15-20 minutes to the lake in the other. It worked well for us.
Hope this helps!!!