Preface: This is something I noticed with my site tonight (I call the project djingle, although I've never opened the source) and went looking to see how you handled it. Come to find out, you had the same issue. The examples on Djangoproject.com don't mention the significance of the item_pubdate method.
Issue: When someone subscribes to a feed for the first time, the last n entries are returned in reverse order with the current machine timestamp. Over time, new entries take on the timestamp of when they are added to the feed reader, not when they're actually published.
To fix: Define this method for each feed:
def item_pubdate(self, item):
return item.pub_date
Attachment: Described behavior in NetNewsWire. Newest articles should be at the top (they aren't).