This is only a temporary workaround. I would suggest you report this to the Bugs forum as I believe you are correct. I checked on IM 6.4.0-3 with the same results from -modulate. Here is a work around.
If you are on Q16:
convert icon.png -colorspace HSL \
-channel G -threshold 65535 +channel \
-colorspace RGB icon_s0.png
If Q8, then replace 65535 with 255
Basically I am changing the Saturation channel to zero (black) without actually converting the image to HSL, as -threshold is a channel selective operator.
See similar processing of the luminance channel of the rose image at:
http://www.imagemagick.org/Usage/channe ... bine_other
This also works:
convert icon.png -colorspace HSL \
-fill black -colorize 0%,100%,0% +channel \
-colorspace RGB icon_s0.png