The xsl:value-of looks odd at least with the nodes you are trying to process. On the other hand your elements seem to have some text contents so that content should show up, all concatenated together though.
I am not sure where the problem is, I would start with doing
Code:
<xsl:copy-of select="$dm.manifest"/>
to see whether that variable contains what you expect.
Note that the <xsl:variable><xsl:value-of select="..."/></xsl:variable> can and should be shortened to <xsl:variable name="dm.manifest" select="..."/>. But that should not cause the problem you describe.