ARP and ICMP echo are currently only two ways how IPAM can detect if IP Address is used or not. if you make it "reserved" we do "echo" request but we do not change the status, however we update the last sync field. ARP and ICPM echo do not impact reservation status as you noticed. you found interesting environmental behavior that we need to consider in IPAM. I'm personally against making IP as reserved based on ARP table scan, because reservation is specific user process where IP was assigned to MAC by user. But we can certainly improve caching and behavior of ARP scans and probably make the interval for ARP scan configurable. I assume that the IP address is used all teh tame, it's simply about device doesn't communicate so frequently and it disappears from ARP cache at teh tim of IPAM scan.
I think that my issue may have had something to do with the way I was working within the UI. For instance, I would define a network and then I would start adding comments to entries which were listed as "available" but were, in fact, active. I started adding the comments before actually reserving them. This would be going on while IPAM was still scanning the network. If the scan completed before I marked the entries as active, the comments would be deleted. As long as a mark the entries as "reserved" before making comments the comments stick.
One thing I'd like to see done with IPAM is to have IPAM reverse DNS the "reserved" entries as well just as another level of auditing. In our change control process, once an IP address has been allocated, DNS is updated (before the IP becomes active). This would be useful because if the comment and the DNS information do not match up that tells me something wasn't done right.