Craft Neo – childs Output
Your above code is not working because you are using "block" instead of "item" in your children. So...

{% for item in block.children %}
    {% switch item.type.handle %}


You don't necessarily need to do a switch here, you could do a series of includes and make their file names match your block type... so "_includes/neo/box.twig" and "_includes/neo/image.twig"

In the example below I am replacing "item" with "child" to explain it better.

{% for block in entry.MatrixNeo.level(1) %}
      &lt;h2&gt;{{ block.mainTitle }}&lt;/h2&gt;
      {% for child in block.children %}
           {% include "_includes/neo/" ~ child.type %}
      {% endfor %}
    {% endfor %}