SPI Interface to 10bit DAC

I’m working on interfacing with a Maxim MAX5354 10 bit DAC. The serial protocol is SPI, and I have a sketch working where I can manually input the data and it gets sent out properly. The message packet consists of a 3 bit header (all zeros), 10 bits of data, and 3 more bits (also all zeros). Currently I have it set up where I send two 8 bit packets. I’d like instead to send a 16 bit word, with the 3 bit “header” and 3 bit “footer” predefined and the 10 bit data as a variable.

I’m quite new to programming the Arduino (this is my first program), so any helpful advice would be greatly appreciated. It was a quite the chore getting this far.

#define DATAOUT 11    //MOSI - Data out to DAC
#define SPICLOCK  13  //SPI Clock
#define CHIPSELECT 10 //Chip Select

void setup(){

  byte clr;
  pinMode(DATAOUT, OUTPUT);
  pinMode(SPICLOCK,OUTPUT);
  pinMode(CHIPSELECT,OUTPUT);
  digitalWrite(CHIPSELECT,HIGH); //High = Device Disabled
  
  SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR1)|(1<<SPR0);  
  //SPR1 & SPR0 set to one gives slowest transfer rate (good for breadboard testing)
  //SPR1 & SPR0 set to zero gives fastest transfer rate
  clr=SPSR;
  clr=SPDR;
  delay(10);
}

void loop()
{
  // Split data into two bytes
  byte dacSPI0 = 0;              // dacSPI0 is the upper byte of the message
  byte dacSPI1 = 0;              // dacSPI1 is the lower byte of the message
  dacSPI0 |= 0x1F;               // 0x1FF8 yields max output from DAC
  dacSPI1 |= 0xF8;
  digitalWrite(CHIPSELECT,LOW);  // Low = Device Enabled
  SPDR = dacSPI0;               // Start the transmission
  while (!(SPSR & (1<<SPIF)))    // Wait the end of the transmission
  {
  };

  SPDR = dacSPI1;
  while (!(SPSR & (1<<SPIF)))     // Wait the end of the transmission
  {
  };
  digitalWrite(CHIPSELECT,HIGH);
  delay(5);
}

Thanks,
Patrick