I like to book directly via DCL's website then call DCL to add any details like hotel stays or private table request or to check for stateroom availability that isn't visible on the website. Then I transfer the cruise to Costco Travel to get a Costco cash card back after the cruise for 8.5% of the base cruise cost, plus an extra 2% cash back via my Costco executive membership, and an extra 3% back via my Costco Visa card. That adds up to a tidy discount.
When I book a placeholder onboard, I have it transferred to Costco when I get home, then book the cruise via Costco Travel. The Costco Travel discounts go on top of the 10% placeholder discount.