Why did my winning endgame end in a draw?
These answers restate the rules implemented by our open-source engine, which follows the WXF laws for movement, checkmate and both repetition rulings: a side that forces a repetition by perpetual check or perpetual chase loses rather than drawing. The chase half has not been validated against the official casebook. Where an answer refers to a specific position, that position lives on the linked reference page, where the build verifies it before publishing.
Direct answer
Three usual causes: you traded into material that cannot force mate — a lone cannon being the classic; you left your own general at home, and several mates do not work without it; or you spent the sixty-move count on aimless checks instead of taking escape points first.
The material trap
A lone cannon cannot even give check to a bare general. Trading down to it while "winning material" is agreeing a draw. Check the material table before the last few trades, not after.
The technique trap
Random checks improve the defending general's position and burn moves. The method is always the same: take the escape points first, then check once. With that order the basic mates take a handful of moves and the sixty-move rule never appears.
Related questions
How many moves should a basic mate take?
A few. If you are past twenty, the technique is wrong rather than the position.
Is a full defence always a draw against one piece?
Against a lone chariot, normally yes: the manuals call it a draw. Not winning it is not a failure of technique.