This is the strongest single rule on this site and it is worth stating on its own.
Operators cancel for lightning, not for rain. From roughly June to October, storms build through the morning and arrive between two and five. A nine o'clock departure is almost never affected. A two o'clock departure in August is a coin toss, and it is a coin toss in which you lose an afternoon rather than the money, because most operators refund or rebook and the refund is not the problem.
The water itself is better early. Biscayne Bay is shallow and the afternoon sea breeze builds chop across it; morning water is flat, which matters more than you would expect on a paddleboard, in a small boat, or with anyone prone to seasickness. Visibility for snorkelling is also better before the day's traffic stirs the bottom.
The rebooking asymmetry. If a morning trip is cancelled, you still have an afternoon and often a next morning. If an afternoon trip is cancelled on your last full day, you have nothing. That asymmetry is the whole argument, and it applies to a $40 shared cruise exactly as much as to a private charter.
The exception that proves it. Sunset departures have their own logic and their own light, and they are worth booking. What does not work is the middle: a two o'clock trip in summer has the worst odds of the day and none of the sunset's compensations.
One safety note that is not about the boat. At seven in the morning the lifeguard towers are not yet staffed, and rip currents form here on onshore winds even when the ocean looks flat. Swim where you can see other people, rather than at an empty access point a mile from anything.