Forum Moderators: open
I'd say your intuition makes sense -- there's usually no reason to insert the defaults (align="left" or valign="middle") unless you are overriding some previously declared positioning. There's also little reason to declare alignment in the TD tag and then also use a DIV tag for the same purpose.
A <p align="center"> can often take care of alignment changes within a table cell. Extra background color (in a jpg) or transparency (in a gif) can help position an image properly.
As far as CSS support for text-align, the only issues I'm aware of are for "justify" [in NN4 and IE3, both PC and Mac]. Other values are clear sailing.
I personally find code with lots of "insurance" declarations very crazy to maintain, so I using prefer one tag per result. For the same reason, I am learning to avoid layout tables when I use CSS.