As far as I can see you are doing it halfway correctly, but missing one crucial thing that will probably solve your issue: The condition to check against acf_get_row_layout is missing on your “layout blocks”, as described here:
You should add them to “Layout 1”, “Layout 2”, and “Layout 3” and then it should work as expected.