Many frameworks include Reset-Rules, which is a single stylesheet (Generally Meyers' or a derivation of it) that balances out the rendering of elements across multiple browsers. Now, if you decide to use a CSS Framework or not, you SHOULD use a Reset.
I've only really used 960, and I must say that I enjoy it. The cool thing is that your layout is laid out with classNames that contain numerical-values, meaning you could programmatically determine a new layout if you like - simple math. It also makes developing a complicated layout much faster in many cases. Nettuts did a video of 960 some time back called "A Detailed Look at the 960 CSS Framework."
Do you NEED a framework? No. Do they help? In many cases. At the very least, I would encourage you to download 960 and play with it, and from now on start using at least a Reset.
Example of 960 Markup and Class Names:
<div class="container_12">
<div class="grid_7 prefix_1">
<div class="grid_2 alpha">
...
</div>
<div class="grid_3">
...
</div>
<div class="grid_2 omega">
...
</div>
</div>
<div class="grid_3 suffix_1">
...
</div>
</div>