If the keyboard shortcut corresponding to, for example, workspace_1_key is pressed when workspace 1 is the currently selected workspace, the current workspace changes to the previous workspace. This happens because of lines 256--259 in xfwm4/src/workspaces.c. These lines seem to be implementing the 'change to previously selected workspace' functionality by overloading the meaning of the parameters to the workspaceSwitch function: if the workspace to change to is the same as the current workspace, the function changes to the previously selected workspace.
That's a feature, it's not a bug.
I think this feature would be more useful if there was an alternate_workspace_key