Ok, I think I can see the problem. In your download server behavior you are referencing the file to download like this:
This is not valid because this recordset is not filtered, because of this you will always download the first record from this recordset.
There are a couple of ways you can fix this. The easiest way would be to add in a new hidden form element just before the button. For the value of this hidden form element you should set it to the filename from the recordset.
After you do this you should modify the download server behavior. For the filename you should select your new hidden form element.
This should get the download server behavior to initiate the download for the proper file.