Are you using Test Credentials to test with or are you using the Live credentials.
If you are using the Test Credentials, then you will need to enable the sand box:
look for these two lines on your confirm page:
$PP_DirectPayment_required[0][$nextIndex] = "UseSandbox";
$PP_DirectPayment_required[1][$nextIndex] = "true";
and if you are not using the Test account, then change it to:
$PP_DirectPayment_required[0][$nextIndex] = "UseSandbox";
$PP_DirectPayment_required[1][$nextIndex] = "false";
I just want to mention that you can't use live credentials using sand box and you can't use test credentials when not testing in sand box.