I don't think you should use normally be feature branches with git-dpm. Rather you edit the commit directly (whether by rebase or --amend).
Also I think there is an error in the way you have done the git-dpm, e.g. when committing B21, you have added to the existing B12 patch instead of replacing it. Similarly when adding A31, you haven't replaced A11.