so much is going to depend on your VST and how well the expressiveness and timbre of the sound is properly correlated with pure volume. Dorico can help with but not fix limitations or bugs with the sample library. I can imagine it’s not easy to exactly correlate with every VST out there! The easiest way to start (which you’ve probably done already) is to test out all the dynamic levels you want such as ppp to fff in a series of consecutive bars by changing the dynamic power curve. I’ve found it to be pretty sensitive. A level of 1 is usually far too restricted but the default 2.5 often makes even pp virtually inaudible. I’'m currently using 1.4 with VSL with dynamic crossfade switched on. after considerable experimentation. Another important thing is Humanize which in the case of high dynamic sensitivity should probably be reduced – at any rate I’ve found it necessary to do so.
Just as a comparison, Sibelius allowed giving exact MIDI numbers to every dynamic but the scale most certainly was not linear and I actually find the Dorico method at least as effective as well as much easier. To me, though some disagree, if your library has one dynamic controller which affects timbre and character of the sound and one which is pure volume, it’s best to use a Secondary Dynamic and assign one of these to velocity. This way the dynamic lane and velocity will be approximately matched. If an individual note is the wrong volume, then correct it in the velocity lane. If a section has the wrong volume in relation to another, just adjust it a little in the dynamic lane. I’m already starting to get better playback results than with “the other” software thanks to these various new control options.