Ok, I have a new version that a) has some additional logging, b) handles certain events differently and c) uses a different method to select the next rare to hand. I ran some tests with it and it seems to not hand wrong rares anymore while being practically as fast as 1.0.2
As I made changes to the code for the Component Exchanger as well and haven't tested those changes yet, consider this a pre-release:
http://ac.ranta.info/installer/StuffExchanger-1.0.3.msi
If anyone wants to help me verify the correct behavior of this version, please type in "/sx loglevel 4" before you start an exchange to turn on logging. (The setting that controls the logging does not get saved, so if you log out and do another exchange, you have to type the command again if you want logging to be on.)