I can confirm that most of the time the reported work around where you disembark whilst looking down in only 1 blocks worth of water usually means the boat stays.
Having the same issue. Super frustrating having to keep creating boats if you don't want to do the above solutions...
Another workaround, that seems to work most of the time is:
Make sure you disembark in no more than 1 block deep of water and look directly down while exiting.
Doesn't always work, but most of the time