Wow, I didn't know it was going to be quite this
I like Tye's idea of possibly using a separate sub-module (Net::Ping::Dangerous? ;) that might incorporate some of the more elaborate approaches, and then letting Net::Ping know about it. I can see that some of my earlier trouble in using Net::Ping came from possibly not understanding the security implications of making system calls from a Perl module, even though this might be an effective approach.
Perhaps some of the biggest improvements could come from not just looking at the code, but also by adding a Troublesooting section to the Net::Ping documentation? If it was more specific that the module might behave unexpectedly because of 1. These 2. Possible 3. Conditions, there would probably not be as much confusion and questions from people using it.
In any case, this is a great thread, Falkkin, and you write some convincing arguments, as do AgentM and Tye. Great weekend reading. ;-)