Did you find a solution to this problem? I am running LDMS 9 sp1 and have the same issue. Some service packs are detected fine but others just won't report the correct value.
I have the same problem and can't figure out why. To get around it I have been looking at my machines from the Patch Manager perspective and it has been a lot more accurate. I will usually set up a column set and target the Security and Patch Definition.Reason component then I will go and qualify it for the Vulnerability ID "WXP-SP3" The attached column set.jpg shows how I set it up. Then it will show the machines and have a column that either says "The version of Windows XP is less than the version specified" or it will show "Windows XP SP3 has been installed." The attached machines.jpg shows this.
You can also target these machines by doing this type of stuff and using queries. Both seem to work better for me than trying to target the OS->NT Info->Service Pack component.
Thanks very much for that. It will be very useful.