I got around the same problem a different way.

In shopping_cart.php replace

$back = sizeof($navigation->path)-2;

if (isset($navigation->path[$back])) {

With

$back = sizeof($navigation->path)-2;

if($navigation->path[$back]['page']=="product_info.php"){
$back = sizeof($navigation->path)-3;
}
if (isset($navigation->path[$back])) {


More...