Desaturate component at Weighted Average mode is using gamma corrected RGB values.
And output form is as follows.
output = (R ^ 2.2 * 0.3 + G ^ 2.2 * 0.59 + B ^ 2.2 * 0.11) ^ (1 / 2.2)
Probably using gamma corrected value is reason that negative value is clipped.