Agree with Product9.
Along with what he already stated, CSS2 uses element positioning which is a major factor in design.
Customization with CSS Div tags allow for more visual formatting not readily available to table designs.
Also, great for SEO because less code for crawlers to index keywords of your site without going through so many table tags, and nested table tags.
Central documentation of styles using cascading style sheets (don't have to edit all pages when changes are made).
Larger sites consisting of hundreds and thousands of page can be easily formatted using style sheets.
In the early days of HTML and web authoring, visual layouts were next to nill, and tables were used to display data, not position elements and style them. When the web got older, designers started using tables to create more visual pleasing layouts by using tables to arrange them on the page. BUT, soon realized that using tables had major limits when it came to issues of positioning and advanced style options.
Consistent look and feel for a website is very important especially in marketing. By using tables for visual formats, there is more room to overlook certain if not many elements that need to be consistent through out your whole site.
Separation between design and content is used quite frequently and should not be overlooked. When working with eCommerce, CMS systems, and higher end application structures, you don't want to mix the business logic model with page formatting.
I have used table design structures in the past, and will not go back to that design paradigm unless to create a template for beta to layout the possible look and feel of final product.
Hope this helps.