Hi! Can't tell you the best time between March and May. We traveled in August and it was great weather. I can tell you, however, that you should book the 4 night cruise. Three nights just won't be enough and you will probably regret not going the extra night.
We are traveling on the Magic (Western) next March 27 so I am curious about the weather and crowds as well.
Maybe someone can help us with that one.
Sandy