Here is what I did:
Recently bought a 1999 Wrangler, had a 5 year old top on it. Top was dirty with mildew inside, some slight seperation of fabric backing from vinyl. Scratched windows but no holes in them. Two small holes in the top. Some threads missing from top. Zippers OK. Velcro not as tight as new. I'd say about two years left, with no TLC.
1 Inch rainstorm caused leaking, apparently thru stitching seams. Water seeped in and dripped onto floor.
First, I got some Simple Green spray cleaner (do not use it straight) and gave the outside a good cleaning with a medium-stiff brush. Then I put some silicone caulk on the holes after masking around them. One was an L-shaped tear over the driver's seat where there are two layers of vinyl, so I worked a patch between the two layers and siliconed it in place then siliconed again over the outer tear. Then I treated the entire top with that thick tire shine silicone, and after that dried I hit every seam and the zipper fabric with Scotchguard.
Have been caught in the rain 2x since then while driving, no leaks. I do not know what will happen if it just sets in a hard rain like the first time.
Also, Duplicolor flat black fabric and vinyl spray paint (2 coats) covers the mildew nicely, does not bleed thru, and the rails/seals/rollbar were easy to mask off.
Total three hours and 13.00 for two cans of Dupli-color. Had the rest in the garage. Looks like it will hold for a while and may even be worth repairing the velcro, if it fails totally.
Plan to clean and silicone/Scotchguard the top 2-3 times a year. Also, Damp Rid inside after a rain works well.