As Rick pointed out, it is true. The reason is that everyone gets the same menu on Pirate night. So you're missing the regular menu of the rotational restaurant that you happen to be in on that night, which is fine on a 4+ night cruise, because you can just have that restaurant's menu the next night. But on a 3-night cruise, you get to eat in each of the rotational restaurants exactly once. So if they made everybody have a pirate menu, there wouldn't be any other chance for those people to try the regular menu for that restaurant. Essentially, everyone would only get two restaurant menus, instead of all three.
Now that I've written that, it seems really long-winded and a little muddled. Does it make sense?