Sometimes programs just don’t behaive the way the’re supposed to. This is the time you need to bring in heavy machinery.
One hint is to look at the actual assemblies being used. I happend quite a few times, when some unexpected assemblies where being used. The easiest way to achive this is by looking at the binding log of .Net.
This can be done, by turning on the Fusion-Log in the registry at
HKLM\Software\Microsoft\Fusion\ForceLog and setting an appropriate path at
HKLM\Software\Microsoft\Fusion\LogPath. The logs can then be inspected with the Assembly Binding Log Viewer.