How do I cut a semicircle into a curved surface?
Cutting it without messing up the topology (ngons, tris, unwanted distortions, etc.) will be hard.
However, for your specific case I think you might have better luck building the shape by extruding/filling.
For example:

Duplicate a cylinder:


Select some of the edges along the top/bottom of the cylinder and press W&gt;Bridge edge loops:


Repeat for the other side(s), then add a solidify and a subserf modifier: