Smooth is also affected if one or more edges of the selection touch the canvas boundaries. Expand and Border seem unaffected.

BTW, to a Contract selection command that works the way (in my opinion) it should, grab the Contract Canvas action from this page:

Contract Canvas Action < http://user.fundy.net/morris/redirect.html?photoshop20.shtml>

or as part of the complete Extended HotKeys set, here:

Extended HotKeys Action Set <http://user.fundy.net/morris/redirect.html?photoshop2.shtml>