Research your ports of call thoroughly you do not wastte valuable time. Irecommend going with a private tour in Russia- better value than the cruise ships and a personalised service - Alla or RedOctober are recommended. I would check out the ports of call section over on cc to find a heap of inf.
Be prepared fro changeable weather. if you dont book with either a private tour or the ship's excursion, you will need to organise a visa for St Petersburg before you leave the UK.