Negative grades received via FTMS are less than Zwift UI display

I am working on indoor bike which connects to Zwift via FTMS.
During testing I am not able to get negative grades equal to what Zwift UI display.
For example, Zwift display -10% grade, but via FTMS I get -247. According to FTMS spec, grade is sent with 0.01 resolution as signed 2 bytes (LSB first) so -247 equals to -2.47% which is far less than Zwift display.
Can somebody from Zwift team comment on this?

Also I have noticed that there is some delay between UI grade value is display and when it is sent via FTMS. Couple of seconds? Is this expected? Maybe Zwift display next grade value instead of current on UI?

I looked into this once. If I remember correctly, trainer difficulty comes into play as well - so on 50% it multiplies the grade by 0.5, AND the negative grades were always 0.5 * the positive grades. That could be where you get approx -2.5 for a -10% grade in game. Where is your trainer difficulty set?