A few cases that have occurred over the years:
1. Working with inherited code, one of the original programmers had an identifier I believed was "el" (short for "element") but that was actually "e1" (presumably short for "element 1"). You don't know frustration until your compiler tells you "undefined identifier 'el'" when, by all appearances, there's nothing wrong with your code. Not only did I waste a couple of hours on this, but the stress probably shortened my life by a few hours, too.
2. Embarrassingly enough: For reasons that I don't understand, I have on a couple of occasions typed a zero where I meant to type an uppercase 'O'. I shipped Python code that had a bug in it because I assigned a value to "box0ffset" instead of "boxOffset". The bug was thankfully minor, and I obviously must have been smoking crack to make this typo, but it has happened and could have been avoided if I'd been using a good font.
3. I've seen C code (I think in an open source project) where the programmer typed something along the lines of "100l". He probably meant to type "100L" and just missed the SHIFT key. By this time, I'd switched to a font that had an "l" that was clearly distinct from a "1", but I imagine that I would have otherwise been utterly perplexed.
These are probably not everyday examples. The circumstances in which confusion is possible are rare. But they do happen and are (in some sense) expensive. At the very least, it's a whole class of errors that's easily and cheaply avoided by choosing an attractive font that minimizes the opportunities for confusion. Why risk the frustration?