In general we prefer to avoid options, unless really necessary. In this case the option doesn't seem to be necessary and instead we should have a way to send unaccelerated values with rawinput messages and accelerated values with the other messages.
You still need to send accelerated input x/y values for non-raw mouse messages, and other cursor position logic anyway. This could be done like the wine-staging patch you used here, with a flag, but then it would require calling NtUserSendHardwareInput twice, and that's probably not great.
Otherwise you could pass the raw values in a custom struct, as NtUserSendHardwareInput lparam, possibly with a flag to indicate the presence or absence of raw values (so that other drivers can keep the current behavior).