switch_to_blog() and wp_nav_menu() not functioning properly

After a bit of debugging, I was able to narrow this down to the following:

The menu that I had created to display across each site in the network was comprised of Custom post types that were not registered on any other subsite, only the main site (1).

For whatever reason the custom post type must be registered on each site in the network where you will displaying the menu (2,3 etc.).

This can be done in the same way that it was done on the top level parent site (1), but alter the show_ui to false inside of the register_post_type call, to prevent the custom post type from appearing in the child site admin menu.