Hi, sorry for unearthing such an old thread, but as I stumbled across the very same problem and found this thread via Google, I'd like to add what worked for me:
The problem seems to be a energy saving bug in software version 2.5.8. Once you use 3G, and even it you deactivate it, it will still drain your battery, leading to a "Battery Critical" in less than a week.
What seems to work is: After switching off 3G, reboot the DX, and it will hold its battery level for a long time.
... I wrote this down in a blog post as well (both in German and in English).