I think the market is unreliable because it's always changing according to the current needs/wants of consumers. The Panama canal situation was a rare success and it just so happened that the market was reliant on the shipping services which basically gave large corporations an incentive to contribute to resolving the canal problem. Getting those ships through the canal without troubles was the most ideal situation for shipping companies and large corporations who relied on shipping since there may be other issues for them if the canal was no longer available to use.
Trading ecosystem services on the market would only work if the problem largely affects the current market and also affects those who are able to provide resources or funding so that they would actually want to solve the issues.
I do think it's necessary to not take water for granted and getting municipalities to value natural assets such as water could be a way to proceed towards a positive future.
Perhaps to make people value water more, the price of water for things like consuming/cleaning could be set based on one's household income so that everyone can still have relatively equal access to water. It's more difficult with drinking water but maybe income could be programmed into a citizen card (BC service card) so that when people purchase water for drinking, the price would be based on the person's income. For example a bottle of water for someone could be $5 per liter if they have a low income and $50 per liter if they have a high income. We should make sure there's a limit to how much one can buy in a day to prevent hoarding. This idea would need to have many preventative components to overcome corruption and inequity. The sad reality is that this is much too difficult to implement for now and there is a possibility for illegal activities which may prevent equal access to water.