Using binascii.hexify() on the output str from my question yields: "18fa1c836b95e31188eb002564e9e3cf684d8863dd92cf4aa82fcf79ccd993e318fa1c836b95e31188eb002564e9e3cf00000000000000000000000000000000". This is the same result as:
C:\Windows\system32>fsutil.exe objectid query "myfile.txt"
Object ID : 18fa1c836b95e31188eb002564e9e3cf
BirthVolume ID : 684d8863dd92cf4aa82fcf79ccd993e3
BirthObjectId ID : 18fa1c836b95e31188eb002564e9e3cf
Domain ID : 00000000000000000000000000000000
So I have independent verification from fsutil.exe that my Python function is producing the right output.
I still don't know whether the Windows functions were used absolutely correctly, and would appreciate any corrections if they weren't.