Image Styles not creating on one custom style only
The problem was that the image style was never being called to save the image in the first place. The following code forces the image to save for this use case.

function MODULE_node_presave($node){
  // Get some field items from a field called 'field_image.
  if ($image_items = field_get_items('node', $node, 'field_image')) {
    $image_item = array_shift($image_items);

    // Load the associated file.
    $file = file_load($image_item['fid']);

    // An array of image styles to create.
    $image_styles = array('emailthumb');

    foreach ($image_styles as $style_name) {
      // Get the location of the new image.
      $derivative_uri = image_style_path($style_name, $file-&gt;uri);
      $style = image_style_load($style_name);
      // Create the image.
      image_style_create_derivative($style, $file-&gt;uri, $derivative_uri);
    }
  }
}


credit here force image style generation on save node