That sounds processor-intensive. A simple idea would be to allow players to dig water tiles out in any tile adjacent to a water tile- so they could make canals or extend rivers or what have you. If you can fill these in, then you have a whole system.
Now, I imagine a large gang of players could hypothetically dig and fill in trenches until you basically get a single water tile in the middle of a desert that still somehow has fish in it...