You can actually, from the dhcp server side, make a static assignment of an IP and in that case the MAC address would be the reference for dhcp server to know what IP to assign. This is probably not the case here.
Let's take a look on how the dhcp thing works.
When booting the client sends out a dhcp request on the broadcast address. Every dhcp server within that broadcast domain, in other words computers on the same side of a router, sends a response to the client with a dhcp offer.
If more than one server respond the client can choose from the offered leases and then it sends an acknowledge response to the server from which it decide to use the IP. The other servers not getting a response assume their IP wasn't selected.
Most of the time when having problem with dhcp the problem are on the client. Clients can be pretty stubborn. Forgot to tell that the client can request for a preferred IP when asking the servers and if that IP are available the servers might offer it.
Also the previously leased IP tend to be tried the next time and if it still is free then the server suggest it.
The lease time can also be set to not expire, called a permanent assignment.