ディスプレイのデバイスコンテキストのハンドルを取得するときは、NULL で終わる文字列 "DISPLAY" へのポインタを指定します。
と、MSDNにはかいてあるよ。
CreateDCはDISPLAYという文字列(数値じゃないよ)をもらったらデスクトップのハンドルを返すと解釈してます。