Pull the headliner...
You will have to pull your headliner down to repair this. Your sunroof sits in a metal tray and when water drains out of the sunroofs it goes through two black plastic blocks on the sunroof tray. These plastic blocks have hoses that run down the inside of the "A-Pillar"(the windshield frame is a part of this).
As I said, the blocks are plastic and the sunroof tray is metal. The silicone seal was poorly installed when the Rover was built and will need to be resealed.
I just went through the same thing and I fused it to the metal tray with JB Weld Plastic and then covered that with clear silicone sealer to keep the water out.
Its a pain in the neck to get the headliner out, but its your only way to solve this problem.