image_style_create_derivative not resizing the image
image_style_create_derivative needs the style passed as array..,
so _ first you need to load the style or fake the array


  applying all image effects defined in $style['effects']


see: image_style_create_derivative

i usually use image_style_url like this (if taken from field), otherwise just pass the source.

        $field = field_view_field('node', $node, $field_name, reset($image), $arr_display);
        if ($img_style) {
          $uri = image_style_url($img_style, $field[0]['#item']['uri']);
        }
        else {
          $uri = file_create_url($field[0]['#item']['uri']);
        }