diff -r -u old/cairo-1.12.16/src/cairo-quartz-font.c new/cairo-1.12.16/src/cairo-quartz-font.c
--- old/cairo-1.12.16/src/cairo-quartz-font.c	2014-04-15 13:39:14.000000000 -0600
+++ new/cairo-1.12.16/src/cairo-quartz-font.c	2014-04-15 14:39:00.000000000 -0600
@@ -440,7 +440,9 @@
 		       bbox.size.height / emscale);
 
     /* Should we want to always integer-align glyph extents, we can do so in this way */
-#if 0
+    /* Do so to avoid round-off error that happens somewhere in the path of rendering
+       text (e.g., "-" vs. "-d" with 12-point Menlo) */
+#if 1
     {
 	CGAffineTransform textMatrix;
 	textMatrix = CGAffineTransformMake (font->base.scale.xx,
