OED
The OED defines the noun shoo-in as:
In Horse Racing, a predetermined or ‘fixed’ race, or the winner of it. Hence loosely, a horse which is a certain winner.
Their first example of the noun "shoo-in" is in a 1928 horse-racing magazine explaining:
A ‘skate’ is a horse having no class whatever, and rarely wins only in case of a ‘fluke’ or ‘shoo in’.
They say it's from the transitive verb, to shoo in:
With in, to allow a racehorse to win easily. U.S. slang.
Their first use from a 1908 horse-racing book:
There were many times presumably that ‘Tod’ would win through such manipulations, being ‘shooed in’, as it were.
The verb shoo is used for driving animals such as livestock, and there's a clearer link to the earlier meaning of the noun as a fixed race: a chosen horse wins easily as they only had to shoo it in. Later it gained today's meaning of a dead cert.
Antedatings
I found earlier examples of both the noun and the verb.
The verb was used in "Pointers from the Paddock" in The Washington Times, June 23, 1894:
Backers of Syracuse were hot under the collar.
Unkind people said Mattie Chun was "shooed" in.
The noun can be found in The San Francisco Call of August 22, 1895 on "The Bay District Races" with "the favorites all beaten":
Little Pete was a member of the delegation
that were in on the "shoo" in the third race.
He had several commissioners placing his coin
on Model. If the race was to have been a
"shoo-in" for Model, there must have been one
or two owners that were not in on the deal.
This has both the usual noun "shoo-in" as well as a less common in-less noun "shoo".
The morning Times of September 22, 1895, under "JERSEY WAS "SHOOED" IN":
One of these fixed races was run out of
the chute in the fifth event yesterday that
was so thoroughly rotten that the talent
threw up their hands in horror. Jersey
came out and beat the 2-to-5 shot, Forest,
with apparent ease, and the one comment
that was made on the race was "shoo."
(Here's also verbs and nouns from 1899 and 1903.)
A noun antedating in a 26 June 1910 New-York Tribune details "Vernacular of the Race Track" and helpfully tells us the etymology:
Most of the "regulars" are deeply suspicious of all
steeplechase races of late years, and, whenever the
favorite falls at one of the obstacles and a long priced
leaper wins the race, they loudly call the race a "shoo-in"
(a fixed affair, that is, in which the steeplechase racers
have arranged to drop to the rear of the "meant"
jumper and "shoo" him to the wire, they previously, of
course, having got their money down on the horse thus
generously treated).
More horses
Horse-racing has given rise to quite a lot of modern-day sayings. The aforementioned 1910 Tribune says:
Already we have transferred scores of these baseball and racing terms to the currency of our every day speech, and this sort of transplantation goes on unceasingly.
In searching for answers for EL&U I've discovered quite a few with a horse-racing origin: in good nick, pull it off, and less surprising, racing cert, and from dog hunting and racing: cut corners, get a bye.