-there is a cheap and easy way to keep model railroad ballast stuck to your bases, above and beyond what PVA glue alone is capable of.
Like a lot of guys, I don't have the inclination or the talent to model superfine custom bases (especially for basic troops), but the barebones GW bases are, well, bare. I use the time-honored tradition of painting the base with white glue and dipping it in a medium model railroad ballast, but any amount of painting or handling at all is bound to knock off a considerable amount of your 'dirt'.
Gesso is a priming medium that has been used on rough or uneven surfaces since sometime in the Middle Ages. It has some unique properties that make it ideal for 'our thing'- it's tough, flexible, cheap, and perhaps most interestingly if you glop it on thick it will shrink as it dries, meaning that you can be a little heavy-handed and you won't lose too many surface details.
And when I say heavy-handed, I mean heavy-handed:
Give your glopped on, err... generously applied gesso a couple hours to dry, and you wind up with a surface like this:
Gesso, being a mixture of glue and pigment and some other things, creates a tough coating over your ballast and will hold it in place for painting and help to keep it in place for a long time. Just spray prime the model and paint as normal- or, conversely, you can use a light brushing of gesso over the entire model for your primer coat. I do this sometimes on metal models, or if I can't spray outside due to the weather and I absolutley have to paint right now.
Short of laboriously applying superglue to each individual grain of ballast, I can't think of any better way to get ballast to stay in place. Just be sure to use a brush you aren't too concerned about. I generally use the same brush for gesso that I use for PVA glue.