Mystery Solved:

I could understand names such as Ithaca, New York — classical names have often been seen as classy in America — and Memphis, Tennessee and Cairo, Illinois, which are based on the conceit of the Mississippi as the American Nile. Other names, such as Boston and New York, simply reflect the settlers' Old Country. But why St. Petersburg, Florida? How is the Sunshine City on the Gulf of Mexico connected to a Russian city near the Arctic Circle?

Well, Wikipedia reports, the answer is pretty simple: The city was cofounded by Peter Demens, a Russian who spent much of his youth St. Petersburg; though I doubt that many of its residents are Russian, its important early settler was, and that's all it took. Moscow, Idaho remains a mystery, though:

The origin of the name Moscow has long been disputed. There is no evidence that it was named by a Russian or for a Russian city. What can be verified is this: five of the settlers met to choose a proper name. They wanted a prestigious name, one that would bode well for the town. They failed to come to an agreement quickly, and so they designated the postmaster, Samuel Neff, to complete the official papers. He chose Moscow, which because of its favorable meaning, 'city of brotherly love,' met the desired requirements. An interesting sidelight to the choice is that Neff was born in Moscow, Pennsylvania and later moved to Moscow, Iowa.

UPDATE: I have no idea why anyone would think that Moscow (or, in Russian, Moskva) would mean "city of brotherly love." (For whatever it's worth, "brother" in Russian is "brat," and "love" is "liubov'.")