i think the problem comes from sku value interpretation. It has been fixed in latest git however.
in comparison operators, your 2 skus would match equality !!!
See this snippet:
<?php
$x="301e-1204";
$y="601e-4312";
echo "$x/$y=>".($x==$y?"Y":"N");
?>
It would echo "Y" at the end. In fact, PHP takes those as "numbers" (since XeY is a valid numerical notation) if using "relax" comparison operator "==". This doesn't happend with strict comparison (===)
nor strcmp.
this sku comparison code has been fixed for a while now in latest Git see this Git Commit.
Try latest git version, it has many bugfixes & enhancements. It should fix your problem.