Let A and B be DFAs. Let M be a Turing Machine that decides EQdfa. 

The algorithm for M would be as follows.

Count the number of nodes in A
Count the number of nodes in B
Compare the number of nodes in A and compare it to the number of nodes
  in B. Take the maximum node count and square it. We will call the squared
  node count n.
simulate A and B in turn giving them all the strings up to length n and 
  compare the results.
if the results are the same accept
if the results are different, reject.

The length of n being the square of the largest number of nodes works 
because this ensures that each of the DFAs use loops they more than likely
have. If the accepted strings are the same when the loops are used, giving
the machines a longer string will just send the DFAs into the loops for a 
longer period of time before accepting or rejecting.