I tried your interest calculator and it fails. Maybe because it accepts duration in years and I've specified 0.5 (with quarterly payouts).
I didn't get any errors, just the wrong result (0).
I think the main problem is the poor choice of units: user should be able to select even days as units, not just months/quarters.