Very rarely do I see the rustling grass when I'm walking through it. What are the determining factors when the grass starts to shake? Is it just a random event? Is there any items or a pokemon move that I can use that will increase the chance of this happening?
There does not appear to be any way to increase the chance of rustling grass, or the water/cave equivalents rippling water and dust cloud. They seem to occur after an unknown number of steps have been walked, and they only seem to appear on the current screen when this number of steps has occurred. So for best results outdoors find an easily accessible patch of grass near a grassless path, and then walk back and forth until grass rustles. Same idea for water ripples. Try not to pace in an area where both water and grass can be seen, as you may get a water ripple when looking for rustling grass.
Ideally you should use a repel when heading into the grass/water, or a regular random encounter might occur on your way to the special area, removing it. In caves, just use a repel and walk/surf back and forth until a special area appears. The repels have no effect on the special areas - stepping on them will result in the same encounter with or without a repel - but they can eliminate the chance of encountering a wild Pokemon on your way to it.