I don't know if you can replace the slickedit default shell (I doubt you can), here we simply use the cygwin shells a lot, by simply calling bash -c <your command> or sh -c <your command> in various c-slick macros and projects commands.
Sometimes you have to be careful with commands like gdb or find, find conflicts with the DOS FIND command (make sure you call /usr/bin/find for ex.), and slickedit has its own gdb which might conflict too.
Regarding terminals, since we can't replace the thing used in the build window, we have a couple of macros that open the terminal of our choice (mintty at the moment) directly at various locations, like "from currently active buffer's parent directory" or "from currently active project directory". Those are easy to make and extremely handy.
I hope that helps.