You could output a new xml-stylesheet processing instruction.
Example...
XML Input
<?xml-stylesheet type="text/xsl" href="orig.xsl"?>
<doc>
<test/>
</doc>
XSLT 1.0
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" />
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="processing-instruction()[name()='xml-stylesheet']">
<xsl:processing-instruction name="xml-stylesheet">
<xsl:text> type="text/xsl" href="new.xsl"</xsl:text>
</xsl:processing-instruction>
</xsl:template>
</xsl:stylesheet>
XML Output
<?xml-stylesheet type="text/xsl" href="new.xsl"?>
<doc>
<test/>
</doc>