The difference between powershell and *sh (besides the obvious many-small-binaries unix philosophy vs the one-giant-blob windows philosophy) is that *sh is both a CLI and a scripting language. Powershell is useful just as a scripting language. Sure you could use powershell as the CLI, but it does seriously suck.
Granted with bash illustrating the problems of a dual-use CLI and shell, separating the two might not be such a bad idea, but it's so much easier transitioning from shell one-liners to full shell scripting than the same from dos commands to powershell scripting. But posix enables this, not any particular unix shell in and of itself.