Any travel agent "worth their salt", would get you the Carnival points, and maybe more.
Travel agents aren't a middle man either. They are paid by the cruise lines. The cruise lines don't charge more if you use a travel agent, when really they should charge less if you book directly with them.
If you find a good agent, you're getting the services of a professional, at no cost. To be that's a no brainer.