I've created a Bezier curve, and used to shrinkwrap modifier to project it onto my object:
Now I want to cut along the curve, splitting the mesh into two.
How can I do this? If I just use knife project, I would lose the 'lid' part.
There is a Cut Through option for Knife Project tool, as shown in Figure 1 below (btw, since Knife Project tool doesn't require the curve being snapped to the surface, the Shrinkwrap modifier isn't quite useful here, just make the projected cut through the ortho view, Top view in your case);
P to separate the default selection after that, see Figure 2;
Select one object, enter Edit mode, A to select none, ShiftCtrlAltM to select the cutting edge loops (in Vertex or Edge select mode), then W > Bridge Edge Loops. Repeat it on another object. See Figure 3.
There is another nice script called Sculpt Tools shared in Blenderartists.org, which can do this in one stop. But the final mesh needs a bit refinement compared to Method 1 here.
(Image by the addon author Piotr Adamowicz)
There is also a similar addon called Sculpt Trim Curves Utility, which also did it. But I'm not sure if it still works well with the latest blender version.
(Image from blendernation.com)