<xsl:variable name="name" select="'I am a boring string.'" />
<p><xsl:value-of select="my_function:hello($name)" /></p>
works and produces Hello, I am a boring string.
but add this
<xsl:variable name="testnode">
<node>Hello, I'm a node. I've been to PHP and back. Wild stuff.</node>
</xsl:variable>
<xsl:copy-of select="my_function:hellonode($testnode)" />
causes the entire page to show up blank.