The underlying type for the internal UUID type in the Go driver and the UUID types in the google/uuid and gofrs/uuid libraries are all [16]byte, so the BSON marshaling behavior should be the same for all 3 (they are marshaled as the BSON “binary” data type). There is currently no UUID type provided by the Go driver or Go BSON library that has any special marshaling/unmarshaling behavior.
Check out an example of the default marshaling behavior on the Go Playground here.