Setup projects only ever do a registry search in the 32-bit part of the registry, even if they are built for x64. Internally, the RegLocator table does not have the msidbLocatorType64bit bit set in the Type field on x64 builds. So on an x64 system the MSCRM registry item might exist only in the 64-bit part of the registry, and not in the 32-bit view, the Wow6432Node, and both x86 and x64 setups would fail to find it. If you look at the registry and that's the issue, then I'm not sure what you'd do exzcept use Orca to update your x64 MSI file in the RegLocator table:
http://msdn.microsoft.com/en-us/library/aa371171(VS.85).aspx
Phil Wilson