Your problem is that roslaunch turtlebot_navigation gmapping_demo.launch attempts to launch the node for a physical 3D sensor, such as a Kinect or Asus Xtion, as well as the gmapping node. If you look at the file gmapping_demo.launch you can see it includes 3dsensor.launch.
The tutorial instructs you to use roslaunch turtlebot_gazebo gmapping_demo.launch because Gazebo/Stage is simulating your sensor, so it only needs to start the gmapping node, which you can see here.
So try running roslaunch turtlebot_stage turtlebot_in_stage.launch as you were, then roslaunch turtlebot_gazebo gmapping_demo.launch, and it should work fine.