You are no doubt reading this article because you are wondering why this dwm.exe process is taking more memory than you think it should, and you are curious what it does. Thankfully for you, we have the answer.
So What Is It Anyway?
Desktop Window Manager (dwm.exe) is the compositing window manager that gives you all those pretty effects in Windows Vista: Transparent windows, live taskbar thumbnails (that you can resize now), and even the Flip3D switcher that you can disable and replace with Switcher.

What happens in Vista is that applications write the picture of their window to a specific place in memory, and then Windows creates one “composite” view of all the windows on the screen before sending it to your monitor. Because Vista is keeping track of the contents of each window, it can add effects when layering the windows such as the transparency we’re all used to, as well as the live preview thumbnails.
The benefit to using this approach is that Windows Vista can utilize the hardware acceleration features in your video card to create very smooth animations for minimizing and restoring, and even for the transparent effects.
What about Memory Usage?
If you open up Task Manager, you can see the dwm.exe process in the list, typically taking somewhere between 30-50MB of memory in my testing:

The size of the DWM process is controlled by the number of windows that you have open, since each window requires a buffer in memory to store the contents of the window. If you have a large number of very large windows open, DWM will use more memory.
The benefits of using a compositing window manager are worth that relatively small amount of memory under most circumstances.
IconPackager doesn't usually cause a significant issue. If it's the first time using it you may get some high usage as it's being applied . . but everything should level out quickly.