My understanding is that for Spain the VAT is assessed at the time of consumption and/or the time of purchase. Accordingly, it's assessed on drinks when served even if on a drinks package purchased months before outside of Spain.
Also, my understanding of which country's VAT laws are enforced many times depends upon the embarkation port. For example, I've seen some indication that Spain's VAT rules will be imposed throughout the cruise no matter where you are if the cruise begins and ends in Spain.
That said, if the itinerary goes to at least one non-EU country, I believe no VAT is imposed.
Regardless, NCL has determined that it is in their best interest to make the VAT the responsibility of its customers when it is imposed, unlike many (if not all) of its competitors.
There may be additional nuances, but that seems to be why so many here report paying no VAT when there cruise begins in Italy, for example.
Just my two cents.