Without a data sample, using only your description of the desired logic, I think you need to go for a nested IF:
IF([Project Class]='Subscription') THEN 1 //Subscription
ELSE //all other classes
IF ISNULL([Project Rev Fcast Last Upd Dt])
OR DATEDIFF('day',[Project Rev Fcast Last Upd Dt],TODAY())>14 THEN 0
I still don't know why you would get anything except 1, 0 or Null, even with your IF statement - you are probably seeing aggregated (summed) results.