Advertising agencies, PR firms and graphic artists are talented people with creative ideas. They are knowledgeable in their field, and produce quality work, however they are not web designers*.
The core of the issue is the reinforcement of bad habits. They think they know how to design a web site, because they’ve done it (they think successfully) a dozen times before. The typical top-down flow doesn’t allow for these bad habits to change. At the bottom of the work flow is the web designer that is saddled with a poor layout that must be implemented as outlined (because it’s been approved by the client).
Because the web developer is usually forced to “make it work”, the agencies aren’t required to make changes (or learn what is the “right way”). A poorly designed format can force a developer to spend much more time trying to meet the expectations of the client and the agency.
Beyond that the final design will be weaker because the DNA was transplanted from a brochure or a newspaper ad. Vital concepts like usability and accessibility are ignored.
Building a web site should be a collaborative effort, not a top-down hierarchy. If working with an agency is required, the agency should be responsible for the overall branding, but the web designer should be responsible for the specifics.
The web designer needs to be part of the creative process from the project kick-off, so that any issues or pitfalls that occur in the process can be solved before the client approves the format design. The greater input the web designer has in the development of the format, the easier it will be to develop the rest of the site (and the better the site will be).
I know that there are advertising agencies and graphic artists that do understand how to design for the web (properly). It is too bad that those agencies are the exception and not the rule.
* In this case, I am defining the web designer as someone with the ability to create a look for a web site and turn that into valid HTML/XHTML code.