I never used DirectX so I have no idea, but:

Maybe DirectX takes information from graphics driver and synced itself to the monitor's refresh rate. If you use drawing directly then it will wait for VSync each time you call a drawing function, but if you use BeginDraw I suspect it disables VSync until you call EndDraw. Maybe that's the issue.