Мне кажется, что проблема должна быть с HttpUtility.UrlEncode. Вы проверили содержимое создаваемого вами xml? XSL выглядит правильно для меня, хотя его можно записать более кратко, как:
<a href="{@link}" target="new">
<xsl:value-of select="title"/>
</a>