I avoid anything under 5 days so you don't get the "but I just unpacked" feeling when the trip is over. I guess if your near a port it would be good weekend thing.
Do any of the major lines do these trips? I'm guessing the biggest issue would be a minor line having less quality, activities, and a smaller ship that you might be used to.
If it's an option I'd suggest making it a long weekend and just go to the bahamas for 3 nights.