diff --git a/AUTHORS.rst b/AUTHORS.rst
index a1843ad..d167ec9 100644
--- a/AUTHORS.rst
+++ b/AUTHORS.rst
@@ -24,3 +24,4 @@ Contributors
 - Gonzalo Naveira, `gonzalonaveira@github <https://github.com/gonzalonaveira>`_
 - Wenbo Zhao, zhaowb@gmail.com, `zhaowb@github <https://github.com/zhaowb>`_
 - Mervyn Lee, `mervynlee94@github <https://github.com/mervynlee94>`_
+- Weineel Lee, `weineel@github <https://github.com/weineel>`_
diff --git a/src/pydash/objects.py b/src/pydash/objects.py
index f3bed2b..6949e8e 100644
--- a/src/pydash/objects.py
+++ b/src/pydash/objects.py
@@ -934,7 +934,7 @@ def _merge_with(obj, *sources, **kwargs):
             if _result is not None:
                 result = _result
             elif all_sequences or all_mappings:
-                result = _merge_with(obj_value, src_value, _setter=setter)
+                result = _merge_with(obj_value, src_value, iteratee=iteratee, _setter=setter)
             else:
                 result = src_value
 

diff --git a/tests/test_objects.py b/tests/test_objects.py
index 2217438..b218043 100644
--- a/tests/test_objects.py
+++ b/tests/test_objects.py
@@ -573,11 +573,11 @@ def test_merge_no_link_list():
     [
         (
             (
-                {"fruits": ["apple"], "vegetables": ["beet"]},
-                {"fruits": ["banana"], "vegetables": ["carrot"]},
-                lambda a, b: a + b if isinstance(a, list) else b,
+                {"fruits": ["apple"], "others": {"vegetables": ["beet"]}},
+                {"fruits": ["banana"], "others": {"vegetables": ["carrot"]}},
+                lambda a, b: a + b if isinstance(a, list) else None,
             ),
-            {"fruits": ["apple", "banana"], "vegetables": ["beet", "carrot"]},
+            {"fruits": ["apple", "banana"], "others": {"vegetables": ["beet", "carrot"]}},
         ),
     ],
 )

merge_with: iteratee is lost when _merge_with is recursing.

```python
def merge_array(obj_val, src_val):
if isinstance(obj_val, list) and isinstance(src_val, list):
  return difference(obj_val + src_val)

merge_with({ 'd': { 'x': [2] } }, { 'd': { 'x': [5] } }, merge_array)
```

### expect

```
{ 'd': { 'x': [2, 5] } }
```

### actual

```
{ 'd': { 'x': [5] } }
```



tests/test_objects.py::test_merge_with[case0-expected0]
tests/test_objects.py::test_assign[case0-expected0] tests/test_objects.py::test_assign[case1-expected1] tests/test_objects.py::test_assign_with[case0-expected0] tests/test_objects.py::test_callables[case0-expected0] tests/test_objects.py::test_callables[case1-expected1] tests/test_objects.py::test_clone[case0] tests/test_objects.py::test_clone[case1] tests/test_objects.py::test_clone_with[case0-<lambda>-expected0] tests/test_objects.py::test_clone_with[case1-<lambda>-expected1] tests/test_objects.py::test_clone_deep[case0] tests/test_objects.py::test_clone_deep[case1] tests/test_objects.py::test_clone_deep[case2] tests/test_objects.py::test_clone_deep_with[case0-<lambda>-expected0] tests/test_objects.py::test_clone_deep_with[case1-<lambda>-expected1] tests/test_objects.py::test_clone_deep_with[case2-<lambda>-expected2] tests/test_objects.py::test_clone_deep_with[a-<lambda>-a] tests/test_objects.py::test_defaults[case0-expected0] tests/test_objects.py::test_defaults_deep[case0-expected0] tests/test_objects.py::test_defaults_deep[case1-expected1] tests/test_objects.py::test_defaults_deep[case2-expected2] tests/test_objects.py::test_defaults_deep[case3-expected3] tests/test_objects.py::test_defaults_deep[case4-expected4] tests/test_objects.py::test_to_dict[case0-expected0] tests/test_objects.py::test_to_dict[case1-expected1] tests/test_objects.py::test_invert[case0-expected0] tests/test_objects.py::test_invert[case1-expected1] tests/test_objects.py::test_invert_by[case0-expected0] tests/test_objects.py::test_invert_by[case1-expected1] tests/test_objects.py::test_invert_by[case2-expected2] tests/test_objects.py::test_invoke[case0-1] tests/test_objects.py::test_invoke[case1-2] tests/test_objects.py::test_invoke[case2-None] tests/test_objects.py::test_find_key[case0-expected0] tests/test_objects.py::test_find_key[case1-expected1] tests/test_objects.py::test_find_key[case2-expected2] tests/test_objects.py::test_find_last_key[case0-expected0] tests/test_objects.py::test_find_last_key[case1-expected1] tests/test_objects.py::test_find_last_key[case2-expected2] tests/test_objects.py::test_for_in[case0-expected0] tests/test_objects.py::test_for_in[case1-expected1] tests/test_objects.py::test_for_in[case2-expected2] tests/test_objects.py::test_for_in_right[case0-expected0] tests/test_objects.py::test_for_in_right[case1-expected1] tests/test_objects.py::test_for_in_right[case2-expected2] tests/test_objects.py::test_get[case0-expected0] tests/test_objects.py::test_get[case1-4] tests/test_objects.py::test_get[case2-expected2] tests/test_objects.py::test_get[case3-4] tests/test_objects.py::test_get[case4-None] tests/test_objects.py::test_get[case5-expected5] tests/test_objects.py::test_get[case6-expected6] tests/test_objects.py::test_get[case7-expected7] tests/test_objects.py::test_get[case8-None] tests/test_objects.py::test_get[case9-None] tests/test_objects.py::test_get[case10-2] tests/test_objects.py::test_get[case11-2] tests/test_objects.py::test_get[case12-expected12] tests/test_objects.py::test_get[case13-expected13] tests/test_objects.py::test_get[case14-haha] tests/test_objects.py::test_get[case15-haha] tests/test_objects.py::test_get[case16-None] tests/test_objects.py::test_get[case17-5] tests/test_objects.py::test_get[case18-5] tests/test_objects.py::test_get[case19-5] tests/test_objects.py::test_get[case20-4] tests/test_objects.py::test_get[case21-5] tests/test_objects.py::test_get[case22-42] tests/test_objects.py::test_get[case23-42] tests/test_objects.py::test_get[case24-42] tests/test_objects.py::test_get[case25-42] tests/test_objects.py::test_get[case26-value] tests/test_objects.py::test_get[case27-expected27] tests/test_objects.py::test_get[case28-None] tests/test_objects.py::test_get[case29-1] tests/test_objects.py::test_get[case30-1] tests/test_objects.py::test_get[case31-1] tests/test_objects.py::test_get[case32-None] tests/test_objects.py::test_get[case33-None] tests/test_objects.py::test_get[case34-expected34] tests/test_objects.py::test_get[case35-3] tests/test_objects.py::test_get[case36-1] tests/test_objects.py::test_get[case37-1] tests/test_objects.py::test_get[case38-John tests/test_objects.py::test_get__should_not_populate_defaultdict tests/test_objects.py::test_has[case0-True] tests/test_objects.py::test_has[case1-True] tests/test_objects.py::test_has[case2-True] tests/test_objects.py::test_has[case3-False] tests/test_objects.py::test_has[case4-True] tests/test_objects.py::test_has[case5-True] tests/test_objects.py::test_has[case6-True] tests/test_objects.py::test_has[case7-False] tests/test_objects.py::test_has[case8-True] tests/test_objects.py::test_has[case9-True] tests/test_objects.py::test_has[case10-True] tests/test_objects.py::test_has[case11-True] tests/test_objects.py::test_has[case12-False] tests/test_objects.py::test_has[case13-False] tests/test_objects.py::test_has[case14-False] tests/test_objects.py::test_has[case15-False] tests/test_objects.py::test_has[case16-True] tests/test_objects.py::test_has[case17-True] tests/test_objects.py::test_has[case18-True] tests/test_objects.py::test_has[case19-True] tests/test_objects.py::test_has[case20-True] tests/test_objects.py::test_has__should_not_populate_defaultdict tests/test_objects.py::test_keys[case0-expected0] tests/test_objects.py::test_keys[case1-expected1] tests/test_objects.py::test_map_values[case0-expected0] tests/test_objects.py::test_map_values[case1-expected1] tests/test_objects.py::test_map_values_deep[case0-expected0] tests/test_objects.py::test_map_values_deep[case1-expected1] tests/test_objects.py::test_merge[case0-expected0] tests/test_objects.py::test_merge[case1-expected1] tests/test_objects.py::test_merge[case2-expected2] tests/test_objects.py::test_merge[case3-expected3] tests/test_objects.py::test_merge[case4-expected4] tests/test_objects.py::test_merge[case5-expected5] tests/test_objects.py::test_merge[case6-expected6] tests/test_objects.py::test_merge[case7-expected7] tests/test_objects.py::test_merge[case8-expected8] tests/test_objects.py::test_merge[case9-expected9] tests/test_objects.py::test_merge[case10-None] tests/test_objects.py::test_merge[case11-None] tests/test_objects.py::test_merge[case12-None] tests/test_objects.py::test_merge[case13-expected13] tests/test_objects.py::test_merge[case14-expected14] tests/test_objects.py::test_merge[case15-expected15] tests/test_objects.py::test_merge_no_link_dict tests/test_objects.py::test_merge_no_link_list tests/test_objects.py::test_omit[case0-expected0] tests/test_objects.py::test_omit[case1-expected1] tests/test_objects.py::test_omit[case2-expected2] tests/test_objects.py::test_omit[case3-expected3] tests/test_objects.py::test_omit[case4-expected4] tests/test_objects.py::test_omit[case5-expected5] tests/test_objects.py::test_omit[case6-expected6] tests/test_objects.py::test_omit[case7-expected7] tests/test_objects.py::test_omit[case8-expected8] tests/test_objects.py::test_omit_by[case0-expected0] tests/test_objects.py::test_omit_by[case1-expected1] tests/test_objects.py::test_omit_by[case2-expected2] tests/test_objects.py::test_omit_by[case3-expected3] tests/test_objects.py::test_parse_int[case0-1] tests/test_objects.py::test_parse_int[case1-1] tests/test_objects.py::test_parse_int[case2-1] tests/test_objects.py::test_parse_int[case3-1] tests/test_objects.py::test_parse_int[case4-11] tests/test_objects.py::test_parse_int[case5-10] tests/test_objects.py::test_parse_int[case6-8] tests/test_objects.py::test_parse_int[case7-16] tests/test_objects.py::test_parse_int[case8-10] tests/test_objects.py::test_parse_int[case9-None] tests/test_objects.py::test_pick[case0-expected0] tests/test_objects.py::test_pick[case1-expected1] tests/test_objects.py::test_pick[case2-expected2] tests/test_objects.py::test_pick[case3-expected3] tests/test_objects.py::test_pick[case4-expected4] tests/test_objects.py::test_pick[case5-expected5] tests/test_objects.py::test_pick[case6-expected6] tests/test_objects.py::test_pick[case7-expected7] tests/test_objects.py::test_pick[case8-expected8] tests/test_objects.py::test_pick[case9-expected9] tests/test_objects.py::test_pick[case10-expected10] tests/test_objects.py::test_pick_by[case0-expected0] tests/test_objects.py::test_pick_by[case1-expected1] tests/test_objects.py::test_pick_by[case2-expected2] tests/test_objects.py::test_pick_by[case3-expected3] tests/test_objects.py::test_pick_by[case4-expected4] tests/test_objects.py::test_pick_by[case5-expected5] tests/test_objects.py::test_pick_by[case6-expected6] tests/test_objects.py::test_rename_keys[case0-expected0] tests/test_objects.py::test_rename_keys[case1-expected1] tests/test_objects.py::test_rename_keys[case2-expected2] tests/test_objects.py::test_set_[case0-expected0] tests/test_objects.py::test_set_[case1-expected1] tests/test_objects.py::test_set_[case2-expected2] tests/test_objects.py::test_set_[case3-expected3] tests/test_objects.py::test_set_[case4-expected4] tests/test_objects.py::test_set_[case5-expected5] tests/test_objects.py::test_set_[case6-expected6] tests/test_objects.py::test_set_[case7-expected7] tests/test_objects.py::test_set_[case8-expected8] tests/test_objects.py::test_set_[case9-expected9] tests/test_objects.py::test_set_[case10-expected10] tests/test_objects.py::test_set_[case11-expected11] tests/test_objects.py::test_set_[case12-expected12] tests/test_objects.py::test_set_[case13-expected13] tests/test_objects.py::test_set_[case14-expected14] tests/test_objects.py::test_set_with[case0-expected0] tests/test_objects.py::test_set_with[case1-expected1] tests/test_objects.py::test_set_with[case2-expected2] tests/test_objects.py::test_set_with[case3-expected3] tests/test_objects.py::test_to_boolean[case0-True] tests/test_objects.py::test_to_boolean[case1-False] tests/test_objects.py::test_to_boolean[case2-True] tests/test_objects.py::test_to_boolean[case3-True] tests/test_objects.py::test_to_boolean[case4-False] tests/test_objects.py::test_to_boolean[case5-False] tests/test_objects.py::test_to_boolean[case6-None] tests/test_objects.py::test_to_boolean[case7-None] tests/test_objects.py::test_to_boolean[case8-False] tests/test_objects.py::test_to_boolean[case9-True] tests/test_objects.py::test_to_boolean[case10-False] tests/test_objects.py::test_to_boolean[case11-True] tests/test_objects.py::test_to_boolean[case12-False] tests/test_objects.py::test_to_boolean[case13-False] tests/test_objects.py::test_to_boolean[case14-True] tests/test_objects.py::test_to_boolean[case15-False] tests/test_objects.py::test_to_boolean[case16-True] tests/test_objects.py::test_to_boolean[case17-None] tests/test_objects.py::test_to_boolean[case18-False] tests/test_objects.py::test_to_boolean[case19-None] tests/test_objects.py::test_to_integer[1.4-1_0] tests/test_objects.py::test_to_integer[1.9-1_0] tests/test_objects.py::test_to_integer[1.4-1_1] tests/test_objects.py::test_to_integer[1.9-1_1] tests/test_objects.py::test_to_integer[foo-0] tests/test_objects.py::test_to_integer[None-0] tests/test_objects.py::test_to_integer[True-1] tests/test_objects.py::test_to_integer[False-0] tests/test_objects.py::test_to_integer[case8-0] tests/test_objects.py::test_to_integer[case9-0] tests/test_objects.py::test_to_integer[case10-0] tests/test_objects.py::test_to_number[case0-3.0] tests/test_objects.py::test_to_number[case1-2.6] tests/test_objects.py::test_to_number[case2-990.0] tests/test_objects.py::test_to_number[case3-None] tests/test_objects.py::test_to_pairs[case0-expected0] tests/test_objects.py::test_to_pairs[case1-expected1] tests/test_objects.py::test_to_string[1-1] tests/test_objects.py::test_to_string[1.25-1.25] tests/test_objects.py::test_to_string[True-True] tests/test_objects.py::test_to_string[case3-[1]] tests/test_objects.py::test_to_string[d\xc3\xa9j\xc3\xa0 tests/test_objects.py::test_to_string[-] tests/test_objects.py::test_to_string[None-] tests/test_objects.py::test_to_string[case7-2024-08-02] tests/test_objects.py::test_transform[case0-expected0] tests/test_objects.py::test_transform[case1-expected1] tests/test_objects.py::test_transform[case2-expected2] tests/test_objects.py::test_update[case0-expected0] tests/test_objects.py::test_update[case1-expected1] tests/test_objects.py::test_update[case2-expected2] tests/test_objects.py::test_update_with[case0-expected0] tests/test_objects.py::test_update_with[case1-expected1] tests/test_objects.py::test_update_with[case2-expected2] tests/test_objects.py::test_unset[obj0-a.0.b.c-True-new_obj0] tests/test_objects.py::test_unset[obj1-1-True-new_obj1] tests/test_objects.py::test_unset[obj2-1-True-new_obj2] tests/test_objects.py::test_unset[obj3-path3-True-new_obj3] tests/test_objects.py::test_unset[obj4-[0][0]-False-new_obj4] tests/test_objects.py::test_unset[obj5-[0][0][0]-False-new_obj5] tests/test_objects.py::test_values[case0-expected0] tests/test_objects.py::test_values[case1-expected1]