When I use your code, I see that the order appears correctly.

I suspect the issue that you are experiencing is related to your XML, as you are using unsupported HTML elements:

* `Content`
* `fig`
* `graphic`

Also their respective attributes such as `orientation` and `position` are unknown to the User Agent and is causing unexpected results when you display them. 

I would recommend:

1. Removing the unsupported `orientation` and `position` attributes
2. Change `content`, `fig` and `caption`* to a supported element, like `div`
3. Change `graphic` to `img`

&#42;*caption is a supported HTML element, but only in tables and must be inserted immediately after the `<table>` tag.*

You may also want to consider writing an XSL template to transform the XML to supported HTML and use this in conjunction with the AMPscript [TransformXML](https://developer.salesforce.com/docs/atlas.en-us.noversion.mc-programmatic-content.meta/mc-programmatic-content/transformxml.htm) function.