it's not clear to me if rendering an independent set of data on top of the unchanged OSM data layer (i.e. effectively render two maps, on with some transparent sections) counts as building on top of the OSM database
If you render OSM data with a unique map style, and produce an image, then you have made a "Produced Work" and you only have to attribute OSM, and nothing else. You can make it so people can't copy it if you'd like.
If you make a new database by combing OSM with something else, that new DB is ODbL.
Just showing something on top of OSM doesn't mean it's derived from OSM.
If you render OSM data with a unique map style, and produce an image, then you have made a "Produced Work" and you only have to attribute OSM, and nothing else. You can make it so people can't copy it if you'd like.
If you make a new database by combing OSM with something else, that new DB is ODbL.
Just showing something on top of OSM doesn't mean it's derived from OSM.
http://wiki.openstreetmap.org/wiki/Legal_FAQ