It seems at least one other person is interested so here's what I found:
As far as I can tell it's a bug in WMI. To get around it, what seems to work is to directly set the appropriate registry values for the adapter. These are stored in the registry under
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<guid>
The guid is contained in the IP_ADAPTER_INFO structure filled in by GetAdaptersInfo.
Set the EnableDHCP DWORD value to 1.
I also found it useful to clear the gateways using WMI SetGateways otherwise the old gateway(s) hang around.
I also found that when EnableStatic says it failed, it actually works.
This stuff is only relevant when the network is disconnected.