Module[{inside, reverse},
Image;(* autoload *)
reverse[data_?ArrayQ] := Reverse@data;
reverse[rar : HoldPattern@RawArray[type_, _]] :=
RawArray[type, Reverse@Developer`FromRawArray@rar];
Unprotect[Image];
PrependTo[FormatValues[Image],
HoldPattern[mb : MakeBoxes[im_Image, fmt_] /; ! TrueQ[inside]] :>
Block[{inside = True},
mb /.
HoldPattern@RasterBox[data_, {{0, f_}, {c_, 0}}, rest__] :>
With[{newData = reverse@data},
RasterBox[newData, {{0, 0}, {c, f}}, rest] /; True]