img.naturalWidth と img.complete つかってやってみたら?
img.naturalWidthが存在しないのにimg.completeがtrueなimgはbrokenだろうし。