I believe that the progarm should not penalize a shot that does not clear the water hazard (the program currently treats this as a lost ball with a stroke and distance penalty), but should follow the rules for water hazards where the play "should be able to drop behind where the ball entered the hazard" et al.
If I were to improve the overall game play, I would build in these penalty options, so that a player could select between the alternatives that are provided by the rules of golf.
I believe that I previously had a game many years ago (not online) that did provide for these options.
A match play option for multiple player games would also be a great addition.