What you can do is try and get the filesize header from your CURL request you're making. If thats not available, then you will have to download the image data and get a filesize.
Once you have a filesize, you can compare it with the filesize of the image retrieved by the client to see if it matches.
In IE you can get the filesize of the image via javascript. fileSize is a property of the Image object.
Example: if you have an image with id="myimage".
var image_size = document.getElementById('myimage').fileSize;
You can then send this back to your server in a HTTP Request.
I couldn't seem to find a corresponding property for the Image object in Firefox. So you may have to revert to having JavaScript retrieve the image headers for you on the client side (eg: xmlHTTPRequest), then send the Image Size to you via a seperate HTTP Request back to your PHP Server.
See:
http://www.elf.org/essay/inline-image.html if you want to render the image inline as to keep the browser from making an extra http request for the image.
If you end up having to retrieve the whole image via CURL, then you might as well cache the image and serve up the local copy..