Why does DBCC TRACEON (1204, 1222) not work? I have executed DBCC TRACEON (1204, 1222) on several servers. 

Some of them simply do not turn the trace flags on. The command brings the same expected informational message for each but some simply do not react. 

DBCC TRACESTATUS(1204, 1222) delivers  0, 0, 0 in this case for both flags. 

Why do they ignore it?
Running just DBCC TRACEON (1204, 1222) is per session level.

You should run DBCC TRACEON (1204, -1) globally.

See BOL- DBCC TRACEON for more details.