Dynamically create camera in the BGE?
You could try this:

import bge

scene = bge.logic.getCurrentScene()
owner = bge.logic.getCurrentController().owner
cam = scene.addObject("Camera.001", owner , 0)


Note that the camera object needs to be on an inactive layer.

To set the active camera in the BGE:

bge.logic.getCurrentScene().active_camera = cam