The problem is, there are multiple solutions, because sqrt is not as simple a thing as you like.
>> y = sqrt(x.^2)
The issue is, there are TWO solutions to the problem, thus +/- x. In order to gain the solution you want, you need to tell simplify to ignore those branch cuts.
ysimpl = simplify(y,'IgnoreAnalyticConstraints',true)
From the help for simplify, we see:
simplify(S,'IgnoreAnalyticConstraints',VAL) controls the level of
mathematical rigor to use on the analytical constraints while simplifying
(branch cuts, division by zero, etc). The options for VAL are TRUE or
FALSE. Specify TRUE to relax the level of mathematical rigor
in the rewriting process. The default is FALSE.