This is an intended behavior. The length property only influences the particles from the particle instance modifier if you use the Create Along Paths option, but that doesn't scale them like you want.
They key here is to use the Size parameter. The issue with this is that it only exists for emitter type particles, and not hair. So you cannot control the size of particles if you are using the hair option (as far as I am aware).
Switching to emitter will allow you to control the size of each particle. This is not done with vertex groups, but with textures. Why that is I'm not sure. If you scroll down to the bottom of the particle settings there is a texture panel, where you can create a new texture. Go to the texture tab and create a texture that will define the size. Blend works well for the gradient on your example. There may be ways to convert vertex group values to textures, but I'm not sure about that.
Once you've got the texture created, under the Influence heading in the texture panel there is a Size option. Check that and you should be good to go.