We are booked with our extended family on MSC for June but they only had a few cabins left about 6 weeks ago.
we booked a while ago but son and family just booked about a month ago. Paid considerably more than us. Had slim pickings.
with MSC you can book in advance and cancel and get your deposit back up until final payment is due unless you book the Yacht Club.