Woo Hoo!
Very glad it's working for you, and hopefully we can get this into the mainline kernel so others will get the benefit too... I'm willing to do the leg work on that, but it's normal to credit testers with a 'tested-by' comment. If you'd like to be mentioned can you please PM me your email address?
The deadzone might be a generic problem with Linux - I think that it puts a default value on joysticks unless told otherwise. Check the reported values in jstest verses the values within the HID stream to confirm that it's not the wheel doing it. There is the jscal app which (is supposed) to fix the problem. I also found this util (G25 Manage) which can set the deadzone too:
Regarding Axis3/4 - hats are reported as 2D axis under Linux. If you want to used these for buttons use the 'ATOB' mode in the SD configuration page.
Also it would be nice to confirm all the buttons/dials report OK (in-case there are other changes to the HID descriptor needed) - in helping you out this week I noticed my G27 shifter also contains a X/Y joystick function that is not reported to OS!!
Once you get SD running I'd be interested in your opinions on how well this device works in game, and if the calibration menu needs any additional controls in order to get this set up nicely.
Simon
PS Does the SRW-S1 support any form of rumble under Windows and do the RPM LEDs have variable brightness?