I recently booked Miami transfers through Disney for our cruise in April. They have three hotels that have the
DCL shuttle to port on embarkation day: the Four Seasons, Hyatt Centric Brickell, and EB hotel. DCL bus transfers from hotel to port are $21 per person. You can either book the hotel through disney (they have a group rate that can sometimes be better than direct from the hotel) or book independently (this worked out better for us as DCL does not have all room categories available) and then book DCL transfers by calling DCL.
Of those three hotels, EB is the only one that has a free shuttle from the airport to the hotel; for the other two you would need to do an uber/taxi or arrange a private car to get to the hotel.
Regardless of where you stay pre-cruise you can also book a return shuttle from the port to Miami airport after the cruise, also $21 per person.