He is incorrect. USCIS accepts hyphenated names.
Chapter 5 - Verification of Identifying Information | USCIS
"For purposes of requesting immigration benefits, a married person may use a legal married name (spouse’s surname), a legal pre-marriage name, or any form of either (for example, hyphenated name, pre-married name or spouse’s surname). Requestors must submit legal documentation, such as that listed below, to show that the name used is the requestor’s legal name:[2]
Civil marriage certificate;
Divorce decree;
Family registry;
Country identity document;
Foreign birth certificate;
Certificate of naming; or
Court order.