I haven't tried this system with a custom animation, but I did get my custom item capability (itc) and item capabilities flag? (itcf) working fine on my throwing sword item.
If you look in module_animations.py, you see ready_javelin and release_javelin animation ID's. There is no "throw_javelin" as it is in itcf_throw_javelin. My bet is that the item capabilities flag (itcf) "combines" the ready_javelin and release_javelin to itcf_throw_javelin. That, or it could simply be hardcoded. However, if we take itcf_thrust_onehanded for example, then we see it has ready_thrust_onehanded, release_thrust_onehanded and parry_thrust_onehanded. I hope that only the prefixes, e.g ready, release or parry are hardcoded, not the whole animation ID's.
I did the exact steps as I showed in my tutorial, and I got a throwing sword item working with a custom itc (and it's itcf's).