Steven,
I have found it to be a best practice to let my developers "pull" their packages. If I did a mandatory "push" of the DV package, and they had some objects that they had not checked in or saved to the "save directory", than the push would overright their work. In my experience, pushed packages push out the production objects only. They don't push out the development objects. So in my opinion, your missing step is to require the developers to be more self service orientated. What you could do (my practice) is to update a test terminal server with the latest DV code (for appleads to do testing), and then whenever you build and deploy a new package, send your developers an email notification. Then they can decide how often to update their client.
Gregg