I've encountered this problem, coming from a slightly different direction. I think the compound paths contain an extra pair of coordinates that you're noticing when you split up the results of a FilledCurve.
Here's how I first came across this:
glyph[code_, font_, size_] :=
First[First[
ImportString[
ExportString[
Style[FromCharacterCode[code], FontSize -> size,
FontFamily -> font], "PDF"], "TextMode" -> "Outlines"]]];
a = glyph[97, "Times", 24]
{Thickness[0.130073],
{FilledCurve[
{
{{1,4,3},{1,3,3},{0,1,0},{1,3,3},{1,3,3},{1,3,3},{1,3,3}},
{{1,4,3},{1,3,3},{0,1,0},{1,3,3},{1,3,3},{1,3,3}, ...
{{0,2,0}}},
{
{{3.74836,5.265},{4.01063,5.265},{4.25426,5.35078}, ...
{{0.405,5.96742},{0.405,6.74086},{0.77502,7.35469}, ...
{{4.1175,12.4875},{4.1175,12.4875}}}]}}
The {{4.1175,12.4875},{4.1175,12.4875}} is a short zero-length line that I think might be causing the problems.
I noticed it when I selected the graphic. I could see that there was something odd there:
Graphics[{Gray, a}]

The short line registers oddly as a large dot.
Looking at all the letter forms, it appears that you definitely get this extra line for many letters, not just for "compound paths".
Length[#[[2, 1, 1, 2]]] & /@ (glyph[#, "Helvetica", 24] & /@
ToCharacterCode /@ Characters["abcdefghijklmnopqrstuvwxyz"]);
BarChart[%, ChartLabels -> Characters["abcdefghijklmnopqrstuvwxyz"]]

There's "a", "e", and "o" which have three elements in the relevant FilledCurve. "b" has two, like it should have, but "c" should only have one. "n", "s", and "u" also have more elements than they need. And so on.
You could probably fix this by adding a rule that makes zero-length lines get deleted from the FilledCurve, but that's proved beyond my expertise...
tl;dr I think it's a bug, but who knows whether in Mathematica or the Mac OS system.
Timeslooks different on Mac, but you could work around it by replacingTimeswithTimesNewRoman. – Jens May 12 '13 at 00:30