You didn't show us your call to gamultiobj, so we cannot check whether you correctly passed bounds to the solver. However, I can see that your objective function throws away the x that the solver passes, and instead creates a new x via the line
Remove that line from your objective function, you need to accept the x that the solver passes and work with it.
If you need your variables to be integer-valued, then you are out of luck, because gamultiobj works only with continuous variables. But if you have a vector of only 13 variables that are binary-valued, then why not simply do an exhaustive search over all the possible values? There are only 8192 values to examine.
MATLAB mathematical toolbox documentation