One creates a local branch that is stacked, and one creates a remote branch that is stacked.
E.g. if you do:
bzr push -d local-branch --stacked bzr+ssh://example.com/foo/bar
then that will create a remote branch that is stacked (on local-branch, or something else if the remote server overrides the stacked branch like Launchpad does).
bzr branch bzr+ssh://example.com/foo/bar /tmp/bar
will create a local branch /tmp/bar that is stacked on bzr+ssh://example.com/foo/bar