Well I can only speak for my network which currently is:
Servers:
PDC - Windows NT 4.0 SP6a
BDC - half a dozen all synced and running same version of KXRPC service.
Member Servers 2000 Advanced Server w/SP2

Clients:
Windows 95/95a/95b/95c/98/98se/ME/NT (SP 1- 7 Rollup)/2000 (SP 0-2)/XP Beta/XP


We use the following:

%0\..\kix32.exe logon.kix

This works on all clients including XP

There appears to be only a few variants.

%0\..\kix32.exe logon.kix
or
%0\..\kix32.exe %0\..\logon.kix
or
%0\..\kix32.exe \\myserver\myshare\logon.kix
or
%windir%\Kix32.exe %0\..\logon.kix
or
C:\KIX\Kix32.exe %0\..\logon.kix

However, since there are many ways to alter default settings or impose other security roadblocks I would think it is fair to say that no single answer on this method is guaranteed to work for everyone.

If you are having problems please try launching via one of the above methods and it should work for you.

XP is not the problem as far as I can tell, it is a path issue.

The following code can be used to find the current release version of Windows XP from a batch file. This may need to be altered for other non English languages and/or when XP is updated.

NOTE:
The line to check for Windows 9x must be first otherwise you'll get an error because Windows 9x does not understand the FOR command as used here.

code:
@ECHO OFF
IF NOT "%OS%" == "Windows_NT" GOTO WIN9X
for /f "Tokens=*" %%i in ('ver') do ( IF "%%i" == "Microsoft Windows XP [Version 5.1.2600]" GOTO XP)
IF not "%ALLUSERSPROFILE%" == "" GOTO WIN2K
IF "%OS%" == "Windows_NT" GOTO NT4
GOTO END

:XP
ECHO Found Windows XP
REM Or what ever command you want to run.
GOTO END

:WIN2K
ECHO Found Windows 2000
REM Or what ever command you want to run.
GOTO END

:NT4
ECHO Found Windows NT 4
REM Or what ever command you want to run.
GOTO END

:WIN9X
ECHO Found Windows 9x
REM Or what ever command you want to run.
GOTO END

:END


Hope This Helps -