I've just had to move a website from one Windows 2008 R2 Server (64bit) to another. The site was running on an Access database backend (don't ask...!) and I had forgotten how I managed to set up the datasource a couple of years ago - however I do remember that it was a PITA.

Unsurprisingly it took me a good 2 hours again today until the site was back up and running on the new server and there were a couple of things involved (at least I think these two steps are the important ones):
1) Make sure your site runs in a 32bit Application Pool in IIS. Ok, admittedly I am no longer 100% sure if this is needed but it works for me. I set up the site in IIS and configured it to use its own separate Application Pool. Then I selected 'Application Pools' in the tree under the server node in IIS, selected my site's Application Pool, then chose 'Advanced Settings' on the right under 'Edit Application Pool' and in the window that opened I set 'Enable 32-Bit Applications' to True. I also changed the '.NET Framework Version' to 'No managed code' in order to disable .NET altogether for this site (it does not use .NET and I think some server error 500s I was seeing were caused by this, however I cannot be sure anymore. What I am sure about though is that my site works using this setting :-)

2) Next I needed to set up the datasource. Usually you do this in CF Admin but if you try this on a 64bit Windows machine it is likely that you're presented with an error. If you use the OS's ODBC Data Source Admin then you won't see any Access Drivers listed because the default ODBC Admin is the 64bit version and that one does not have an Access Driver. You must therefore use the 32bit version which can be found at C:\Windows\SysWOW64\odbcad32.exe

Once I set up my datasource using this tool I was able to get my site up and running again.
Hope this helps someone. And no, the site in question is not this blog :-P