I think you can use File::Spec for platform independent work with file paths. But for rsync/find/file patterns there is no (should not be) such thing as platform independant patterns.
Does rsync use different pattern language for different platforms? I doubt. So if you want patterns - use platform dependent code..