Thank you for your reply, and I should have gotten back sooner. I now know what was meant by test suite, so thanks for that. My problem ended up being that I needed to include the following line for IPv6 use:
$Env->dev($if);
Basically, I had to explicitly set the global $Env object's device property to the interface I wanted to use (eth0, wlan0, etc). What I had been doing was creating a separate "New" $env object that I thought would be automaticall used when created, as per the documentation. As I stated before, IPv4 packets had no problem understanding this, and would send just fine. But for IPv6 to work I had to actually start using that global $Env object. From my experience with IPv6 so far, everything is heavily reliant on the user specifying the interface to use. For instance, the ping6 command will not work unless an interface is explicitly specified.
Thanks for all the help.