I did it, but completely by hand. It was a nightmare.
The world I did it for has two moons. The both have different orbits. The problem was that only once a year can they both be full or new moons at the same time. That is, only once a year are both moons full moons, and only once a year are both moons full moons. This is important for the calendar and religious festivals.
It took me a week to figure it all out on paper, and then I lost it. The basement got flooded and all my notes had to be thrown out. I would love for someone to come up with a program that stuff out for me - let me input 2 moons, the period of their orbits, and to specify custom events.