It can be done in a long day (out at 6am, back at midnight), but a stay over might be more fun.
There's nothing really worth seeing in the town itself other than designer boutiques. I think the best way to enjoy St. Moritz is to get on a chairlift asap to somewhere prettier and go for a walk
The train journey there is pretty picturesque too!