Improved image loading via canvas (webkit workaround added)