Because the pages are dynamically generated by the board program. It also uses terrible tables. But they would have to spend a long time wading through this board's source PHP code to change it all. I doubt that will happen.
Further, a lot of the markup/text is user-submitted — just think: every post. Unencoded special characters, incorrect vB code (hence, incorrect markup output), etc. Which will of course cause validation issues. And remember, the administrators here aren't nessecarily of the same opinion as the members. This is also an older version of vBulletin; I believe version 3.x contains valid XHTML 1.0 Transitional (or at least tries to; it features unencoded ampersands, such as that in query strings).