Quick NCB question

If you Gxxx and outfit or Dxxx the outfit, is the associated OnPurchase or OnSell executed?

No, they are not. You'll have to copy the OnPurchase and OnSell functions of the outfit being Gxxx'ed or Dxxx'ed to the outfit/crön/whatever doing the Gxxx'ing or Dxxx'ing if you still want them to occur.

Useful, thanks. An addendum: does anything in particular happen if you Dxxx an outfit that the player does not have?

Not from the player's point of view. I'm unsure as to what the engine itself does, though I assume it checks and sees the player has no such outfit and does nothing.