I still get the D3DERR_INVALIDCALL. The game shows the splash screen, changes video mode, and then gives the error. Here's the last output of cxoffice, using verbose mode:
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_PATCHEDGESTYLE,0) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_POSITIONDEGREE,3) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_NORMALDEGREE,1) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_MINTESSELLATIONLEVEL,1065353216) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_MAXTESSELLATIONLEVEL,1065353216) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_ENABLEADAPTIVETESSELLATION,0) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_ADAPTIVETESS_X,0) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_ADAPTIVETESS_Y,0) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_ADAPTIVETESS_Z,1065353216) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetRenderState (0x1dda378)->(WINED3DRS_ADAPTIVETESS_W,0) not handled yet
fixme:d3d:IWineD3DDeviceImpl_SetSamplerState sampler 9 type WINED3DSAMP_ADDRESSU(1) is out of range [max_samplers=8, highest_state=13]