I don't have any easy ideas on how to find a slow leak - if it is a heron stab then it should be in the top 30-40cm - you might be able to feel it with a bare hand (not this weather!). Otherwise you will have to take the level down, and scrub the liner as you go to find it.
I hope someone can suggest a more direct solution (that doesn't involve radioisotopes and a geiger counter) - I would love to know.
Fixing a small leak in situ is no real problem - you can buy bitumen-treated patches that will stick to (very well cleaned and dry) butyl liners and remain waterproof afterwards.
If your liner isn't butyl it's worth considering changing to butyl anyway.
PVC can be glued - the glue is readily available for patching airbeds.
You can also use silicone and a patch made from an offcut - but if you don't use aquarium grade silicone you will have to leave it above water for at least a week to cure (and you will always have doubts - depending on how expensive your fish are).
You could try using a hot glue gun but I've never tried it - this is the only thing I can think of that would work on dry polythene though I'd be inclined to slip a patch and glue through the hole too - so the mend became a sandwich.
I think my best suggestion is to fix your liner and then get some old slates out of a skip and tailor them to cover the first shelf of your pond. The heron won't get through those!
Of course he might strike sideways into the wall - and that's a lot trickier to armour.
Hope this helps - everything except the bitumen patch is experimental.
Cheers.