Ah man... going for a breakdown and finding "unspecified" is always the worst, right? The first things I would check are...
1. Are your variable expirations for tracking code and marketing channels the same? If your tracking code is set to expire after a week, but the marketing channel doesn't expire for 90 days, then 2 weeks after someone clicks through an affiliate campaign, the marketing channel would still be "Affiliate Marketing" but the tracking code would have expired by then. If this is the case, you still might have the tracking code stored in the marketing channel detail report though (if it has been set up to store the tracking code for the affiliate channel)
2. Seeing that marketing channels are set using logic statements, is it possible that your Affiliate Marketing channel logic is looking additional triggers beyond the tracking code (specific landing page or query string parameter).