Snow layers in Minecraft can be placed on full blocks only. That's the thing I always hated building with stairs, walls and all other stuff. Then I made my own snow with correct models that stays where I want.
Mod uses Forge event handling to detect when player tryes to place snow on supported blocks and places its own snow layer that have needed model. Now stairs and walls supported by default.
Also in configuration you can enable snow on plants, fences, slabs and enchanting table. They are disabled by default because of problems with their bounding boxes.
Source code: github.com/Reoseah/shifted-snow
Such strange name is because of how first blocks really, worked, just shifted down by Y coordinate to work on slabs and tables. First few names I has used then appeared all used by different mods or plugins...