Garmin Descent series watches have free diving activity profiles and support tides. It kind of "cheats" by downloading tide data from Garmin servers via a Bluetooth connection to your smartphone so it's not doing any tide calculations on the device.
https://www.garmin.com/en-US/p/766516/pn/010-02604-01#specs