I've used the following xmodmap script for years to swap my Left Ctrl and Caps Lock keys in Linux:
remove Lock = Caps_Lock remove Control = Control_L keysym Control_L = Caps_Lock keysym Caps_Lock = Control_L add Lock = Caps_Lock add Control = Control_L
It's also worked in my Windows 8 VM, running in VirtualBox, just fine until recently. Now, the remapping no longer applies to the Windows host - I think it started with the release of VirtualBox 4.3.16. When I try to use the regular Left Ctrl, it triggers Caps Lock in the Linux host.