Ah, the error explains it. Based on the error you provided, your input file does not contain a valid Identity for your computer accounts.
Disable-ADAccount accepts the following for the Identity parameter
Specifies an Active Directory account object by providing one of the following property values. The identifier in parentheses is the LDAP display name for the attribute.
Example: CN=SaraDavis ,CN=Users,DC=corp,DC=contoso,DC=com
Security Identifier (objectSid)
SAM Account Name (sAMAccountName)
You are using, for example, 4584XP-LT in your input file; however, in AD computer objects sAMAccountName do not look like that. The sAMAccountName always ends with a $. That is why appending $ to then end of your input value works. By doing so you are making it a valid sAMAccountName to be used as the Identity parameter.
Ok, so on the concatenation, you just need to not use the + sign inside of your “”. “” will automatically evaluate variables, so just put your variable inside of “” with the $ at the end like below.
$variable = "ComputerName"