You MUST home your machine for soft limits to work. You can home manually though, jog each axis to 0,0,0 then zero each axis in machine coordinates. Now turn on soft limits. Soft limits works off of the machine coordinate DROs, i.e. actual machine position. Don't concur this with your local coordinates, i.e. when you zero on the stock.