I'd like to be able to create WPF mouse events so that Win32 events
received by my HwndHost-derived class can be passed up the tree to any
interested WPF parent elements.

Unfortunately, it looks like I can't trivially do this: firing a mouse
event requires a MouseEventArgs instance, which in turn requires a
MouseDevice on creation. I can't use the Mouse.PrimaryDevice, because
the one provided by my HwndHost class doesn't have valid contents, and
I can't create a custom MouseDevice because none of its accessors are
virtual. I can't bypass MouseDevice to create a custom MouseEventArgs
for the same reason.

Is there any way at all to do this?