I would approach this differently, by iterating over the Items/*
elements and extracting the matching Errors
child by position:
<xsl:for-each select="Root/Items/*">
<xsl:variable name="pos" select="position()" />
<tr>
<td>
<xsl:value-of select="local-name()" />
</td>
<td>
<xsl:value-of select="." />
</td>
<td>
<xsl:value-of select="../../Errors/*[$pos]" />
</td>
</tr>
</xsl:for-each>