I think this would be the most accurate calculator.
It's usually better to remain loose on the due date though. It's just a guess. When you tell people the time you're due, I recommend sticking with a due month or due time. Like, "End of April, early May" for example.