|BUG: MsiNetAssemblySupport Property can Contain the Wrong Value|
The "MsiNetAssemblySupport" property is supposed to be defined if at least one dotnet framework exists (and contain the version number of the highest version) and not otherwise.
Unfortunately it doesn't appear to have occurred to Microsoft that people need to know whats installed so they made the detection process effectivly impossible (even for them) and that is the root cause of the fact that you can't trust this properties value.
With Windows installer v4.0.6001.0 running on 64 bit Vista (SP1) with a number of frameworks installed including "3.0" and "3.5" this property returns "2.0.50727.3053".
From the above I would guess that you can probably trust it to detect version 1 and 2 frameworks but not others.