I suspect it's simple ignorance on both sides.
DBAs don't really get it. Developers are all about problem solving. The problem is, developers don't *fully* understand the importance (and difficulty) of maintaining data integrity at the database level either.
I have the curse and the blessing of being the only IT person where I work, and thus I am (among other things) both a DBA and developer.
As a result I think I have a unique advantage over most developers in that I can see (and develop) both sides of the divide, and I have to be the one to decide what the database does and what the front end does.
As a result I'm a FIRM believer in letting the database do all the database work, like referential integrity, business rules (about the data) and basically having the final say on when the persistent data changes.
The front end, well, that's for everything else. 🙂
Of course that means I get to handle all the complexity of both sides, which sucks, but it has put me in the "horses for courses" camp.
After all, garbage in, garbage out, right? And if your data is garbage, you're running a dump, not a database, and the application is just a garbage truck!