Joining to a solid involves tolerance at the edges of the surfaces. If gaps are greater then tolerance, the two surfaces will not join.
The tolerance in this file is .001 of an inch. It could be any units, the tolerance value still is set. The gap between some of the surfaces is 2.2 and more. This can be checked by using Curve deviation to see the gaps.