DIAdem uses TDM under the hood, so it would not help. Citadel may work, depending on the performance needed. It has been awhile since I looked at Citadel. Good suggestion. The SQL connectivity makes it fairly usable from other apps.
If you want to use HDF5 1.6.x, you will need to write some "glue" code in C to interface it to LabVIEW. The major problem is that in version 1.6.x, all the enumerated types went from constants to macros. This works well in C, but LabVIEW cannot read DLL "constants", so there is no way to get to them. The solution is a transition DLL which takes a LabVIEW enumerated type and translates it into the HDF5 enumerated type. This was necessary for the data type specifier in 1.4.x, so you can see an example of this in the sfpFile code. The C code is a simple switch statement for the translation. I would guess there will be about a dozen to do.
You can read the release notes for changes from 1.4.x to 1.6.x, but the biggest other change I am aware of is to the link function. It was expanded. The old link function is now implemented with the new link2 function. It should be relatively easy to fix the LabVIEW code by changing the call library function. The HDF5 backwards compatibility method was a macro. This won't work for LabVIEW, but you can use the template to rewrite the link function. Or you can just create a link2 function and not use the old link.
Final suggestion. If you are using LabVIEW 8.0, you may want to replace all the kludgy "cluster of two 32 bit integers" with a single 64-bit integer. You can also rework the call library nodes to use 64-bit integers instead of doubles. This technique was used because earlier versions of LabVIEW did not support 64-bit integers.
I have no experience using .COM, so cannot comment on how easy it would be to use.
Good luck. Let us know how you made out.