Try adding the TYPE attribute to your RSS/XML feed file, so it will look like this:
<?xml-link rel="shortcut Icon" href="favicon.png" type="x-icon"?>
Generally, favicons are looked for at the root of a domain, though you can put it in a folder, as long as the path is correct.
I have some test feeds on my localhost; one is a .rss and the other a .xml. Though both have a link (as above) to my favicon.ico (at the root of my localhost), only the .xml version will show the favicon in NetNewsWire.
On the other hand, the CNN feed to which I have a subscription, is a .rss feed and it shows their favicon. Looking at the source of the feed, they coded it with <image> pointing to another domain too and it works.
CODE
<image>
<title>CNN.com</title>
<link>http://www.cnn.com/?eref=rss_topstories</link>
<url>http://i2.cdn.turner.com/cnn/.element/img/1.0/logo/cnn.logo.rss.gif</url>
<width>144</width>
<height>33</height>
<description>CNN.com delivers up-to-the-minute news and information on the latest top stories, weather, entertainment, politics and more.</description>
</image>
I don't know if that will help.