I finally got around to reviewing this yesterday. Your assessment is correct and we are going to work on improving how the matching algorithm is handled.
Here's the background:
The PDQ search needs to build a HL7 message while the form is being filled by the user (In the PDQSimilarPatientsSearcher controller). This follows the current practice in OpenMRS that searches the database for patients. When the patient's name is entered, the controller builds the message and the query is fired to the EMPI which returns 'n' results. These results are parsed and scored in the match list.
Our next step is to review how we build the query message to streamline the number of results that are returned from the MPI so that we can leave that logic up to the MPI. We expect to do this over the next few weeks.
FYI @pgesek, @nathaelf