Your assumption is correct. The .NET assembly calls into the C driver DLL to do most of the work; after all, it isn't yet possible to write device drivers in managed code.
With respect to your question - it's the responsibility of the NI-488.2 team at National Instruments to ensure that the C DLL is backward compatible for all of its clients, including the .NET wrapper assembly. It's also their responsibility to ensure that on a system to which the NI-488.2 driver has been properly deployed (i.e. via the installer), an older version of the driver DLL can't overwrite a newer version. If they didn't ensure these two things, any program (C, C++, .NET, LabVIEW, et. al.) that uses NI-488.2 could break. Verifying backward is a big part of our testing. This is esp
ecially true for a product like NI-488.2, which has been in the market for a very long time and has a very large customer base with applications that they expect to run for a very long time.
So really, it's our responsibility. If you want to do what you can to protect yourself from a possible mistake on our part, I recommend that you test your own application when a new version of NI-488.2 is released and report to us any problems that you encounter as soon as possible.