The position is indeed a draw - but your edit suggests a far more interesting question. Why would Houdini give such an evaluation when the position is a known book draw? @EdDean touched upon the answer, explaining the interpretation of the point evaluation.
Houdini, along with other chess engines, will analyze the position many moves deep. The depth is shown in the engine box and shows you how far ahead the computer is thinking. When Houdini calculates 15 moves ahead, it sees a position where White is up two knights against a lone king. Pure Houdini will not know that White cannot checkmate black without an accompanying Tablebase. However, if enough moves are played, you can "trick" Houdini into realizing that all of its best moves are leading to the exact same evaluation with no end in sight. This will cause Houdini to automatically adjust its evaluation to 0.00 - this is the result of some code that tells it if the position evaluation has not changed for X number of moves, the position must be a draw. Interestingly enough, if you keep playing on after this 0.00 evaluation is suggested and reach a position where the next move is checkmate, Houdini sometimes will still suggest this 0.00 evaluation. I've had this happen to me several times in the past and is likely a bug in the program.
In endgames with 6 pieces or less (including kings but without 5 vs 1), the Nalimov tablebase is a preferred method. This computerized database has a precalculated and exhaustive analysis of all possible scenarios with the aforementioned conditions. It returns the game-theoretical value in any given position - essentially "solving" the position.
If you want to read more about Tablebases, check out the Wikipedia page and an example.