Fatti: Fatti: A. A seguito di un controllo eseguito il 4 novembre 2002 presso la F._ SA, la Cassa di compensazione dell'industria svizzera metalmeccanica ha proceduto, mediante decisione 18 dicembre 2002, a una tassazione d'ufficio - riferita a ripresa di salario di fr. 213'857.55 per l'attività svolta da B._ nel 1997 - fissando in fr. 33'037.50 i contributi AVS/AI/IPG/AD (interessi di mora compresi) dovuti dalla società per il periodo dal 1° gennaio al 31 dicembre 1997. A. A seguito di un controllo eseguito il 4 novembre 2002 presso la F._ SA, la Cassa di compensazione dell'industria svizzera metalmeccanica ha proceduto, mediante decisione 18 dicembre 2002, a una tassazione d'ufficio - riferita a ripresa di salario di fr. 213'857.55 per l'attività svolta da B._ nel 1997 - fissando in fr. 33'037.50 i contributi AVS/AI/IPG/AD (interessi di mora compresi) dovuti dalla società per il periodo dal 1° gennaio al 31 dicembre 1997. B. Contro il provvedimento amministrativo la F._ SA, rappresentata dall'avv. Stefano Pizzola, è insorta con ricorso al Tribunale delle assicurazioni del Cantone Ticino, facendo valere che la persona in questione aveva svolto le sue mansioni a titolo indipendente, con fatture emesse dalla O._ di B._, escludendo pertanto qualsivoglia rapporto di dipendenza con la società. Con giudizio 27 ottobre 2003 i primi giudici hanno respinto il ricorso, ritenendo che, benché la O._ fosse iscritta a registro di commercio, l'attività svolta da B._ per l'insorgente fosse di carattere dipendente per il fatto che l'interessato non aveva altra fonte di entrate e nel caso di mancato pagamento da parte della società si sarebbe trovato nella stessa situazione di un dipendente cui non viene versato il salario. Con giudizio 27 ottobre 2003 i primi giudici hanno respinto il ricorso, ritenendo che, benché la O._ fosse iscritta a registro di commercio, l'attività svolta da B._ per l'insorgente fosse di carattere dipendente per il fatto che l'interessato non aveva altra fonte di entrate e nel caso di mancato pagamento da parte della società si sarebbe trovato nella stessa situazione di un dipendente cui non viene versato il salario. C. La F._ SA, sempre assistita dall'avv. Pizzola, interpone ricorso di diritto amministrativo al Tribunale federale delle assicurazioni, al quale chiede l'annullamento del giudizio cantonale. Secondo l'insorgente non vi sarebbe stata dipendenza economica di B._, perché egli aveva potuto svolgere liberamente la sua attività lavorativa. Dei motivi si dirà, per quanto occorra, nei considerandi. La Cassa opponente propone la reiezione del gravame, mentre B._, interpellato in qualità di cointeressato, e l'Ufficio federale delle assicurazioni sociali hanno rinunciato a determinarsi. 