In 2000 I took an11night Western Mediterrenean cruise on Mediterrenean Shipping Cruise Lines MS Monterey out of Genoa. It is a Swiss owned company. We visited Barcelona, Almeria (excursions to Granada), Malaga, & Cadiz (with excursions to Seville), Casablanca, Tenieref Canary Islands (Spanish) & Funchal Maderia (Portugese). In my opinion, the itinerary couldn't have been better. The Canary Islands & the island of Maderia are the best kept vacation secrets in America.
Now some words of caution. MSC is certainly not as upscale as Celebrity, but the service is very good. The room steward was by far the best I've ever had on my 7 cruises & dining room staff were also very good. This line caters to Europeans & announcements are made in many different languages. I have read on some posts that this bothers some people. On my cruise there were only 2 other Americans on board. You will be constantly surrounded by people of different cultures, with different ways of doing things, but I personally enjoy mixing with the "natives". The Monterey is an older ship & certainly nothing special. I understand that Mediterrenean Shipping now has a new ship, MSC Lirica, just christened last year. The Lirica does sail out of Florida at some times of the year, so there must be a transatlantic cruise a couple of times a year.
Whatever you decide to do, I highly recommend a trip to Seville(my favorite Spanish city). The boulevards are lined with orange trees. Can you imagine how heavenly that would smell when they're blooming?