Embedding plain SVG results in incorrect rendering

The short version:
The SVG spec is immense. Really, truly, ridiculously immense.
We employ some extremely limited parsing when you drop an SVG in and choose to embed it. If there’s anything in the SVG we don’t recognize, we don’t reject it - we just don’t assign it any meaning in the output.
For some things, that might be plausible to change on our side. For more exotic SVG features, it’ll probably never happen when embedding in this way; instead, just leave your SVG intact and display it as an image; in that case we don’t know or care about the contents of your SVG, and it’s up to the browser to render it correctly.