While your answer is perfectly correct, it makes sense to explain why IF() doesn't work here as written.
The problem here
IF([Closing Date]='Non', COUNT([Stakeholder]))
is that the condition is checked for multiple data rows, and it could be true for some rows but false for the others. So it is not defined in most cases.
Here is a right way of using IF():
COUNT(if([Closing Date]='Non', [Stakeholder]))