JJ, First, no bus is necessary. If you go to your favourite railway company website (For example https://www.bahn.com/en/view/index.shtml not to a ticket reseller site), and put in "Firenze" to "St. Moritz", with a date and time, this will find you the quickest route.
But, Italian trains for July are not all yet available, so enter a Saturday in May to see what is possible.
Ignoring the options with a bus, the train-only route involves 3 trains:
1) Firenze to Milano
2) Milano to Tirano
3) Tirano to St Moritz.
Tirano to St Moritz is the famous Bernina Express route, the most spectacular crossing of the Alps by train (UNESCO World Heritage site).
When Italian tickets become available in a few weeks, you can buy your tickets at the relevant railway company website:
Firenze to Milano and Milano to Tirano at the Italian Railways website: http://www.trenitalia.com/tcom-en
Tirano to St Moritz at the Rhaetian Railways website: https://www.rhb.ch/en/home
As for luggage, it depends how "large" or "average" your cases are. Don't forget, all luggage on trains is "hand luggage". it is your responsibility to carry it through the station (which may involve stairs), on and off the train and stow it in your coach. So long as you can do that you should be OK.
For more info on train luggage, including photos, read this webpage: https://www.seat61.com/luggage-on-european-trains.htm
You don't need an International Drivers Permit if you are travelling by train, only if you are driving ☺