@brendanshreve - essentially the issue was something disrupting the installation of the pack. SmartDeploy doesn't seem to handle the failure of an installation very well. What I found was this - let's say I pushed out an installation of Acrobat. If some portion of Acrobat was running in memory, the package itself would be copied to the end-user machine, when it would attempt to run on the user's computer, it would see a component running on the end-user computer, then it would just stop (likely the MSI erroring out) would stop the deployment. No error message on SmartDeploy, just stopped. SmartDeploy client then appears to report back that the deployment is "successful" - however, it leaves the package from the previous install in c:\windows\temp - because the previous install doesn't appear to have cleaned it up. Then, if you try to redeploy - the package sees the package there and - for whatever reason - doesn't use it and doesn't try to overwrite it with a new copy of the package.
So on this particular computer, the solution was to go into C:\WINDOW\TEMP and delete the deployment package. Then go into c:\windows\syswow64\smartdeploy\sources and delete the files in there. Reboot the computer (to make sure there is no component running) and in the computer's "pristine" state of just being rebooted - THEN deploy the package.
As a habit now, if I have a package to deploy, I ask users to restart their computers and then I deploy it and call them when it's done to tell them they can log in. If I have a mass-deployment, I ask all users to reboot and leave their computers in that state or I do a mass-reboot of PCs from PSShutdown and then deploy.
If Jeff or any of the guys at SmartDeploy have another idea of a better way to deal with this - let me know!
Hope this helps, Brendan.