We have done the 7 day cruise twice on Royal caribbean Vision of the Seas and once on the 8 day cruise out of San Diego on the Carnival Spirit. While we enjoyed the main dining room food a touch better on the Vision and thought the entertainment was a notch better then the Spirit, we enjoyed the spirit ship much more and many more choices for the buffett as they have different stations each with different food including a deli station. The ship had many more areas to explore. What we really enjoyed was between 5 - 7, they set up a sushi station downstairs and you could get all you want made to order sushi and rolls for free. We would get a whole plate full and bring it back to our room and eat it on the balcony while the sun set.
Both ships are fine, but if I had only one choice and the price was basically the same, I'd choose Carnival.