I believe settling time is not really easy to define. Mathematically speaking, the settling time is infinite, because the filter tends asymptotically to its steady state value. In terms of engineering, it's usually the time needed for the filter to be in a certain margin from the steady state. Commonly 2% to 5% according to a source in Wiki, but it's very arbitrary.
A common rule-of-thumb to estimate it is to take 4 to 8 times of the dominant time constant of the system as the settling time, being the time constant defined exactly on the time taken to reach steady-state value (1 time constant is about 63%). But this is less intuitive with higher-than-2nd-order systems.
An even more common rule-of-work is to look at the response and just decide for yourself (as arbitrarily as you like as the definition is loose) when you're there.
To answer your main question, I simulated that transfer function using MATLAB and found your answer is correct.

To answer your question about definition, the settling time is absolutely not 'the time when the output of the filter will become equal to the step input magnitude'. In neither of the two possible ways to read it:
- It is not the time when they become equal, as that would mean that an overshoot, or even an unstable behaviour, is mistaken by an exact settling time
- It is not the time the output becomes equal to the step input magnitude, but rather the time it becomes almost equal to its steady state value. Unless you are treating a closed-loop system's transfer function it will be coincidential to have your system match the input's step magnitude.