CancelKeyPress not being handled/interrupted correctly - C#