The problem is that the PlayerPickupArrowEvent listener is triggered only when an arrow was fired by a player in survival mode. When a player collects arrows which he launched in creative mode, this event doesn't call. By the way, when a player in creative mode shooting events EntityShootBowEvent and ProjectileHitEvent are calling.
If you want to reproduce this bug just create a simple plugin with one listener with the next code:
@EventHandler public void onArrowPickUp (PlayerPickupArrowEvent e) { System.out.println("You picked up an arrow"); }
And later try to shoot from a bow and collect your arrow in creative mode. Check your console log and, I expect, you will see nothing.