Receptional - 10:13 am on Apr 2, 2010 (gmt 0)
I'm not a GA expert, but I can see a few possible reasons. The first maybe the type of redirect might affect what google says is the referrer. The second is that f people press there back and forward buttons, then the affiliate page can load, followed by your page, making the logs at least suggest that the user went from page a to page b without going through the redirect.
I would start by looking at the http header resonses on those affiliate links, and try to find different types of responses on different sections of his site. Try to find a response header checker that lists the entire route from site A to site B.
(I am only thinking aloud here... Don't quote me as gospel!)