my first approach would have been to ask you to check the image size
second approach would be to ask if you are using a vector image: .png vs .svg.
.png would look blurred in iOS devices (also in OSX, or android/Windows devices using a retina display) because of the pixel density, the image has to expand to accomodate a bigger amount of pixels, so it looks the same as when you use a too small of an image and set the size to be bigger with (html or css) code.
i cannot imagine how the flexbox helped. Interesting!