Sorry to contribute a bit late right now, but I'm looking for something similar, and since the topic is less than a year old I figured I should not create a new one, correct me if I'm wrong. Anyway, They're clearly wrong, for a simple reason, Serious Sam 3 does it, on Windows, Linux and Mac, but I still didn't find out how... But it's possible then! If anyone has any news about multiple keyboards and mice support, go along :D
PS : I realize that the goal is to it with SDL but unfortunately, it seems they have gave up on this feature 1 or 2 versions ago, it was a WIP but it's impossible to find any "concrete" help on this feature anywhere, and some posts on the official SDL forum stated this feature as incomplete, and apparently not in the works =/
Well I may have found an alternative solution, which specifically adresses the issue expressed by Microsoft (aren't they programmers in the first place, and try to figure out that kind of things? anyway...).
So the thing is you have to communicate with the HID(Humain Interface Device) directly, this way you interact at a level lower than the driver level, and on top of this, each device has its own unique ID (all issues adressed ;) ). The only problem will be that you'll have to rewrite input classes yourself, because HIDs send raw inputs, as signals and codes, so you'll have to find a table of standard keyboard and mouse signals anAd IDs. Other than that, I think it's a viable solution. What do you guys think?