image_style_url no longer creates images
There was a change on the Image derivative URLs by the Drupal 7.20 update, as the 7.20 release notes also states:

The security fixes in this release change all image derivative URLs generated by Drupal to append a token as a query string. (&quot;Image derivatives&quot; are copies of images which the Drupal Image module automatically creates based on configured image styles; for example, thumbnail, medium, large, etc.)
As an example, links that previously pointed to a URL like http://example.com/sites/default/files/styles/thumbnail/public/field/image/example.png will now point to a URL like http://example.com/sites/default/files/styles/thumbnail/public/field/image/example.png?itok=zD_VaCaD.
In addition, any code which programmatically generates a link to an image derivative without using the standard image_style_url() API function will no longer work correctly if the image does not already exist in the file system, since the necessary token will not be present in the URL.