Zebediah, I think that using hw_input_t for rawinput would make the code harder to follow. To do it this way we'd probably want to transform RAWINPUT into the custom fields of hw_input_t from __wine_send_input, and decipher the result on the server side. Using a hw_rawinput_t allows us to more closely match the internal data structures of windows from the display drivers / user32.
Additionally, the polling rate bug seems to be dinput related, not wineserver as was previously thought. On a side note, many people with high polling rates have tested Overwatch and none of them have reported lower performance.
Derek