It's not that the arrow is not displayed, you just don't see it because it is painted black! The function expects RGB components as doubles in [0..1] range. So change 255 into 1.0 and you will see the arrow.
BTW, have no idea why the line is actually displayed in red. addLine also expects doubles.
Anyway, this is not a "bug" on the PCL side, because it actually outsources visualization tasks to VTK. If you look inside the source code (http://docs.pointclouds.org/trunk/pcl__visualizer_8hpp_source.html#l00416), you will notice that in the addLine function vtkLODActor object is used, whereas in the addArrow functions vtkLeaderActor2D object is used. Perhaps these two guys are inconsistent in terms of how they treat out-of-range data.