Whichever way to try to slice it, you have the basic limitation that the MIDI standard for defining “notes” thinks there are exactly different 12 notes in an octave. Scala lets you make a “global” tweak to change the pitch of those 12 notes away from equal temperament. Presumably, the VST3 note-based pitch controls are relative to the “base line” pitches set by Scala.
So you may still hit some limitations if you want to work with “precise” just intonation and a scale of more than 12 notes, because you want to pitch-shift the same “MIDI note” by two different amounts.
Actually, Scala doesn’t do anything that can’t be done a different way, i.e. by creating samples for every MIDI note in whatever temperament you like. But of course it’s much more convenient to use Scala, especially if you want to experiment with different temperaments.
There is also the practical problem of how accurately the sampler interprets the pitch-shifting data. If it rounds off pitch shifts to the nearest cent anyway, much of this discussion becomes irrelevant. I’ve no idea what HALion does internally, but the user interface only lets you “fine-tune” a patch in increments of 1 cent. In the old Creative Labs soundfont player engine, this was even more obfuscated, because the engine used pitch increments that were smaller than 1 cent, but not an “exact” fraction of a cent, so when you specified a “1 cent pitch change” you actually got either more or less than 1 cent, depending how the rounding errors worked out.
Here be dragons, as the medieval map-makers used to say…