It appears the plugin doesn't work when using a CDN for serving images. I'm using W3 Total Cache and your plugin (client side), and when I activate CDN (I use Maxcdn), the part of the plugin that swaps the requested low-res file with a retina file doesn't work.
An example page on my website:
Here's the thing: when using CDN, the image http://www.example.com/.../file.png is replaced by cdn.example.com/.../file.png. (The cdn subdomain is redirected to Maxcdn by use of a CNAME record, it's technically not a local file). When using a retina machine, this file should be replaced by cdn.example.com/.../email@example.com, but it isn't.
The kicker is: when accessed directly, this cdn.example.com/.../firstname.lastname@example.org exists and is accessible - the retina-sized images are still generated and are mirrored on the cdn server and everything - the only problem is that the 'file swapping process' as I'll call it doesn't work.
You can test it on the website URL I posted above: the page serves images from the 'cdn' subdomain that do not redirect to their retina counterparts; if you manually change the 'cdn' to 'www' in the image url's, they are in fact redirected to the retina versions.
Is this a problem with either WP Retina 2x or W3 Total Cache, does the problem reside on my end, is it something I can configure? Thanks!