Hmm. Something very strange is going on with jQuery's width() function. In my FF3.5, it's returning 675 for that top image, and 26 for the other two. I'm not sure what's happening here.
However, css("width") does return the correct value. And with the added bonus that it's got the "px" on the end - you don't have this when you use the width to set the CSS of the image_description div, and I think that may have caused you problems.
Anyhow, using the css width seems to sort it out.