To try it out I made a video (one take) of using Metasploit's route statement to accomplish a true pivot. Route is a command that can be run from within the Metasploit console. It routes attacks through an existing meterpreter session. The route statement is not altering the routing tables on the attacking host. This is also different that the route statement which alters the client host when your are in the Meterpreter session. This route statement alters the routing tables used by Metasploit (see lib/rex/socket/switch_board.rb). Not all Metasploit tools will honor the routes. It seems that those that are built on "Session" objects which uses the "Comm" object honor the routes. Some components (such as auxiliary modules) do not inherit the comm and/or switchboard objects and thus do not honor the routes.
Check the video out here.