I would (and did) do it myself in about 2 hours with a roll of 4inch wide
Eternabond tape.I did every roof penetration and both front and rear caps on my trailer about 15 years ago and it is still protecting my RVs roof today with never a single leak. If you clean the area well and apply it according to the directions on the website you will not have a leak again. I purchased two 50ft rolls and still have half of the 2nd one left for emergencies (it probably has aged out).
Doesn't get much better than that! :B
Barney