I can think of the issue as you said third dso does only have key fields and no data fields.
If you do not take any kf from the infoprovider then actually it does not participate in the multiprovider definition.
I would suggest to introduce any dummy kf in the dso,do the assignment in MP and use them in Query definition.You can hide that KF anyways.
Try this and let me know if that works or not.
Regards,
AL