I'm actually running a game designed as a detective series, set in Eberron. Not too many real murder mysteries (a lot of stolen-property cases, a few missing persons, etc), but I just ran Steel Shadows from Dungeon Magazine for them, and it went really well., although they didn't think the murderer was guilty (despite the clues pointing to him) until they found body parts in his trash. The way I've resolved speak with dead and the like is simply not to deal with it; the players are mostly fighter and rogue types, and the only spellcaster's an artificer. I realize this isn't a good solution for everyone, of course.
There are some ways to get around speak with dead, though. If the corpse is mutilated enough (ie, no head), it can't respond. Likewise, if the victim didn't see the murderer (shot from ambush, death attacked from behind, etc), it's no help to the detectives. Thirdly, of course, is the idea that the speak with dead causes more problems than it solves; the murderer is a nobleman, the PCs catch the wrong guy, who's being framed by a doppelganger, and so on.
Demiurge out.