I am also facing issues with leave balance report.
An employee applies for leave and HR rejects the application via workflow. But the leave days applied for is still marked as taken even though status is rejected. Only way for employee to have unused leave days back is if rejected leave application is deleted. This practice is not good for records as previous leave applications denied will not be kept on record.