Why do we say "ahead of" but not "behind of"?
They weren't always "perfect opposites". In Middle English (and earlier, I believe), the "perfect opposite" of "behind" was "before". In fact, there were several collocations as a result (from the MED): "bihinde and bifore, in back and in front; on all sides, in all directions; bihinde ne bifore, nowhere". Actually, they are still opposites, even today. Here's a quote showing both as opposites:
Julius him wes bi-foren, Androgeus bi hinden.
"Julius was before him, Androgeus behind."
Laʒamon's Brut, c1275(?a1200)
At some point in Middle English, another adverb was created, "on head". It meant "impetuously, rashly, unadvisedly". Flash forward to the beginning of Early Modern English and we finally see "on head" (and its new spelling, "ahead") being used to mean "in front of". But significantly, it was used both with and without "of":
The one place must be thwarte of you, the other must be a head or sterne of you.
A regiment for the sea, ?1574
These ships wyll goe well a head the sea, that is to say, the Ship to stande close by the winde in such places as the grating of the tyde doth cause the sea to come agaynst the head or bowes of the Ship.
Treasure for Traueilers, 1578
According to the OED, "ahead" as a preposition is "rare after 17th cent."