Тут конечно вопросы с закрытостью кода и обновлениями...
Как вариант: после
$xsl = new XSLTProcessor;
добавить проверку на существование и включение стороннего PHP файла.
А пользователь сам решит, нужно ему такой функционал или нет. если нужен, то создаст этот самый файл с нужными функциями и вызовом registerPHPFunctions.
Не огорчайте

На улице солнышко и я нашел решение от своей "головной боли".
А это будет полезно многим многим, если мозги не растопились еще мои

, то это вполне себе вариант благополучно обходится без XSLT 2.0 и дальше. По крайней мере всякие преобразования LowCase и т.п. тут будут на ура.