One thing, since you're doing this all in a single block:
You already sample 118 items each from picture.faces and picture.doors in the 236 encoding trials. The picture elements are set to sample randomly without replacement, so when the the recogintition phase begins, there are only 129 items left in picture.faces' selection pool and only 108 in picture.doors'.
Obviously, these will be sampled first during the recognition phase -- you're sampling without replacement after all. At some point the selection pools have to reset because no unsampled items are left. All items are then availble for sampling again for the remainder of the recognition phase.
So, you need to make sure to reset the two picture element's selection pools before the recognition phase begins. The only place where you can do that is the retrieval instructions trial, so something like:
/ ontrialbegin = [
/ stimulusframes = [1=retrieval_instructions; 2=button.continue]
/ inputdevice = mouse
/ validresponse = (continue)