I actually think bottom-up debugging (in this case, by overriding a system binary) is a great way to narrow down hard-to-track problems, and I use the technique all the time. One of my favorites is chmodding a file 000 to force a permissions error by whatever accesses it.