Can't tell if that's a fiberglass one piece roof from the pic. But, for the life of me, it almost looks like the front cap is pulling away from the roof.
How old is your rig, and is it under warranty? If it is I would get it to the dealer ASAP, as you have some big gaps there.
If not under warranty, get yourself a couple of tubes of Dicor Self Leveling Caulk. Clean the old caulk and area in fromt and behind the caulk with mineral spirits, and then go over it with acetone till its dry, residue free, and squeakey clean.
Run a generous bead of Dicor over the old caulk, and squeeze it down into the gaps. Don't be stingy with it...spending 20-30 bucks for 2-3 tubes of Dicor is cheap compared to water damage repair.
If it were mine, I would then, over the caulk (once it's set up) use a 4" wide strip of Eternabond to overlap the entire seam.
Sounds like a lot of work...it's not...an hour or so. But you will end up with a water tight seam.
I never had a problem with gaps such as yours. But when new, I did exactly as I mentioned to the front and rear seams where caps meet roof. That was 3 years ago, and caulk and
eternabond is still as good as the day I put it on.
Steve & Cheryl + Charlie & Casey, our furry kids.
2012 Forrest River Lexington 283ts
Toad, 2013 Subaru XV Crosstrek
Camping trips this year so far...8