по идее, в макросе есть строчки специально для этого
$result = "<udata mode=\"cache\"><![CDATA[" . $result . "]]></udata>";
// данный принцип возвращения данных отключает xslt-трансформацию системой UMI.CMS
поймите что ваш шаблон xsl это отдельный набор шаблонов, поэтому если вы в нем используете какие-то variable или param, которые не были объявлены ранее (или в макросе на примере глобальных переменных как в вашем примере) или если у вас встречаются xsl:call-template какого-то шаблона, который так же не присутствует в данном xsl или в xsl, который подключается в данном xsl, или у вас есть языковые сущности (конструкции типа ∅) и они не объявлены в данном xsl..... то будет критическая ошибка)
так что протестите свой xsl, хотя бы уберите из него все кроме одного шаблона
<xsl:template match="/" >
я работаю)
</xsl:template>