You may have noticed that "programmed" and "programming" stand as an exception to the usual tendency for final consonant doubling to occur in two-syllable words only when the second syllable is stressed (for example, we double the final r in occurring but not in harboring). I use "tendency" guardedly here: Various other exceptions to this tendency exist, and proponents can readily be found for either side in the debate over such unsettled forms as labeling/labelling and leveling/levelling.
Anyway, in U.S. English—or rather, in the representation of U.S. spelling preferences offered in the Merriam-Webster Collegiate Dictionary series—the initial preference with regard to the -ed and -ing forms of the verb program was for no consonant doubling. The debut of program as a verb came in the Collegiate Dictionary's Sixth Edition (1949):
program v.t. PROGRAMED or PROGRAMMED; PROGRAMING or PROGRAMMING. Also programme. To arrange or furnish a program of or for; to enter in a program; to bill.
I believe that the impetus for this preference was the syllable stress test; certainly that would be consistent with the fact that programmatic (where the greatest stress falls on the third syllable) is listed with only the double-m spelling.
Anyway, actual usage led to a reversal of the Sixth Collegiate's order of preference. The Seventh Collegiate (1963) gives the double-m spellings first:
program also programme vt programmed or programed; programming or programing 1 a : to arrange or furnish a program of or for : BILL b : to enter in a program 2 : to work out a sequence of operations to be performed by (as an electronic computer) — programmer
Notice that programer is not an option here. It is quite possible that, going forward, the central role of computers as the objects of programming made the spelling preferences of computer engineers and developers especially significant. In any case, when the computer-related definition of the verb program arrived in the dictionary, the spelling preference flipped.
It flipped, but programed and programing didn't vanish altogether. In fact those spellings still appear as alternative spellings in the Eleventh Collegiate (2003). But the weight of real-world usage is overwhelmingly in favor of doubling the m, as this Ngram chart of programed (blue line) and programing (red line) versus programmed (green line) and programming (yellow line) for the period 1930–2005 indicates:
And here's how the early years (1930–1965) of the contest look, for closer comparison:
This chart strongly suggests that programed and programing never enjoyed a significant advantage in published writing over their double-m counterparts, so perhaps Merriam-Webster had been backing the wrong horses all along. In any case, that dictionary still honors the uncommon single-m spellings by treating them as full-fledged variants, as does the American Heritage Dictionary of the English Language (which is the primary dictionary relied on by Microsoft Word)—and that's why your spelling checker, by default, doesn't flag it.