Mistake : forgetting to add both edges for each clause. The clause "a OR b" needs NOT a → b AND NOT b → a. Both edges are needed. Mistake : confusing node indices. Keep track of which nodes represent x and which represent NOT x.
Use a clear indexing scheme like for and for NOT . Be consistent. Mistake : using wrong SCC comparison. If SCC(x) > SCC(NOT x), set x to true. Make sure you understand your SCC algorithm's ordering convention.