If the last child (including text nodes) of a foreignObject in an SVG-in-img loads a resource (which is limited to object URLs and data: URIs in the case of SVG-in-img), such as html:img[src], html:video[poster], and svg:image[href], the image content is not displayed. The element itself is still displayed.
An easy workaround is to append a text node after the last child.
Could you please attach a testcase showing the issue?
Created attachment 712135 [details]
foreignObject with red image
Created attachment 712136 [details]
html with background image
Seems fine to me.