I would recommend Regent Seven Seas Voyager. You get three days in St Petersburg. If this is your first visit, you will definitely make out with free excursions ( a couple of excursions do have extra charges). I was able to take six separate excursions in my three days. You also get to see Talinn, Helsinki, Copenhagen, and Stockholm. I think they have added additional ports this season. Not miss are St Petersburg, Stockholm, and Copenhagen. I also really enjoyed Helsinki on my two visits. Talinn and Visby were ok but nothing special.
Try not to go too early in year. May and June are really too cold in some of these ports; July and August best.