My mom, sister, and I did a Med. cruise in large part as a way to fulfill my mom's lifelong dream to go to Italy. With mom, traipsing around on our own--the preferred method for my sister and me--wasn't ideal for several reasons, so in most cities we need to do tours. (Mom's request and she was footing the bill for them.)
My sister did a ton of research and via the Cruise Critics message board found people on our cruise to split tours with. They were private tours through private companies, completely separate from the ship. We ended up sharing three tours with the same group. There were 3 of us and 5 of them. We were able to tinker with the itineraries to get exactly what we all wanted--something we never could have done via the cruise company--and instead of 40+ people on a bus and crowding the sites, we were a party of 8. And it was cheaper besides.
Even in St. Petersburg where one *must* do a tour with a licensed tour company due to the visa requirements, our outside-company tour was cheaper and we had a van with 16 instead of a massive tour bus. And we were able to move faster and stay ahead of the crowds. Everyone does more or less the same circuit, and pretty much ever location we arrived at had no line when we went in, and a huge line waiting to enter by the time we left. And again, it was cheaper.
In most places, I prefer not doing a tour, even without the money factor. I found Rick Steves' two cruise books (one for the Med. and one for the Baltics) extremely helpful. But if you ever are doing a tour, don't do it through the boat, and do consider finding people on your cruise with whom to share a private tour, unless you are a very large party.