<p>I'm putting a crontab job for updating with apt-get once a day (running Debian Lenny, there are updates almost daily). But almost all examples i've seen of this cron job invoke the -d flag. </p>

<p>This elicits 4 questions:</p>

<ul>
<li>Why should I only download the
packages and not install them?</li>
<li>Doesn't this defeat the purpose of
running it automatically?</li>
<li>Don't I have to go in and actually
install the updates later?</li>
<li>Is it safe for me to run the cron
job without the -d flag?</li>
</ul>

You're operating on a faulty assumption--neither apt-get (nor aptitude) are meant to be run automatically, nor is the Debian packaging system really designed for it. That's why the tools make it difficult.
What happens when a software upgrade breaks because you forgot to update a configuration file? This has happened to me in the past (apache2), and some with severe consequences that prevented the machine from booting (mdadm). What happens when the software brings in dependencies you don't want (i.e. bringing in the entire X11 windowing system, on a server)? Etc, etc...
If you're worried about installing security upgrades automatically, you want to look at the
unattended-upgrades
package. It will download and install packages from the security archive for you.