Judy,
I take it you mean you are arriving in Geneva (by train or air?), and departing from Milan (by train or air?)
Is this fixed (tickets already booked), or still open? I say this because there is not much to see in Geneva, and it can normally be skipped, or even bypassed, depending where you are coming from.
Here is a rail map of Switzerland: https://www.sbb.ch/content/dam/sbb/de/infotexte/uebersichtskarte-sts.pdf
You can print this out, and mark your route on it. It will also help looking at it while you read my suggestions.
10 days = 9 nights = 3 x 3 places @ 3 nights each. A good rule is no 1-night stops, and try and avoid 2-night stops. If you have less time, you may have to trim the plan.
You can look up train times and prices on the SBB (SWiss Federal Railways) website here: https://www.sbb.ch/en
All rail lines in Switzerland (that is all red lines on the map) have at least one train per hour in each direction. You WILL be able to get where you want, when you want in Switzerland by train.
The plan:
1) From Geneva (if you have to go via Geneva), train to the Jungfrau area (Berner Oberland), Stay 3 nights in one of Mürren, Lauterbrunnen, Wengen or Grindelwald.
Info on the tourist website here: https://jungfrauregion.swiss/en/summer/
2) Train to Zermatt, stay 3 nights.
You can take the direct route (Interlaken - Spiez - Visp - Zermatt), or the more scenic and longer route, which is marketed as the "Golden Pass Express": Interlaken - Spiez - Zweisimmen - Montreux - Visp - Zermatt
3) Train to St Moritz (or surrounding area), stay 3 nights
This is the "Glacier Express" route: Zermatt - Visp - Andermatt - Disentis - Reichenau - St Moritz. It will take all day.
During your time her you can make excursions by train along the Engadin valley.
4) Leaving day. Train St Moritz - Tirano - Milan.
This is the "Bernina Pass route", which goes OVER the Alps. This is your "the scenic train between Switzerland and Italy". After Tirano it passes along the side of Lake Como.
If you have enough nights, you can stop off in Varenna, which is on the lake and the train stops there.