The Mediterranean is the one region where the small-ship-versus-big-ship decision matters more than which countries you'll see, because the itinerary options genuinely differ by ship size — a large ship docks at Civitavecchia and buses you into Rome for the day; a small ship can get into harbours the large lines can't touch at all.
Silversea — Round-trip Civitavecchia (Rome) (7 to 14 nights) — Our own pick, and the one we'd point most people toward first. Around 600 guests, all-inclusive with butler service, and small enough to dock in harbours the large lines simply cannot enter — that alone changes which towns end up on your itinerary.
MSC Seaview — Western Mediterranean, round-trip Barcelona (7 nights) — The counterpoint to our own pick — a genuinely big ship, more onboard activity, and a noticeably lower price per night. Fine if the ship itself is part of the holiday for you, not just transport between ports.
Late April to June, and September to October, for warm weather without the August crowds and prices.
Civitavecchia (Rome), Barcelona and Venice are the three main round-trip ports.