Without an existing plug-in that works for you, modifying the wp-includes/feed-rss2.php is not that big a deal. Add something like:
<nww:source>
<?php
if (get_post_custom_values('Source')) :
foreach (get_post_custom_values('Source') as $sourcename) {
echo $sourcename; }
else :
echo '~';
endif;
?>
</nww:source>
Note that in this case, I know that I will always have only one value, but if you have more, I think you need to put the enclosing custom tags <nww:source>…</nww:source> inside the foreach loop to enclose each value separately (then you could dispense with the “else” statement, too. “Source” in this example is, of course, my custom field.
As far as I know, rss readers will generally ignore this tag. I added it for a newsletter, for which the xml parser does in fact read it (and for which reason I put in a “~” instead of not writing the tag if the custom field doesn’t exist — because the newsletter expects it).
Since this is creating a nonstandard rss tag, you also have to provide a the namespace file (for “nww” in this case) in the <rss> code near the top:
xmlns:nww="http://www.thedomain.org/namespace.php"