If DHCP is on a DC, it will not update an existing A record, and just create a new record. To correct this and make DHCP update the A record you need to make DHCP the owner of the A record.
A couple different ways to do it. The first is the one you mentioned where you set the option in the properties of the DHCP server to use credentials and force update DNS. (This is what learned to do it and I know this works since... I actually do it)
Another way I know of, but have not tried myself, is to add the DC/DHCP server to the DnsUpdateProxy group in the Users OU.